Что должен знать и уметь Junior Java Developer?

preview_player
Показать описание
В этом видео обсудим техническую базу (и не только), которая нужна для того, чтобы устроиться Java Junior Developer. Приятного просмотра!

Оплата помесячно. Чем быстрее учитесь, тем быстрее закончите!

🎓Стартовые курсы (перед менторингом):

🎓 Менторинг:

🎓Продвинутые курсы для состоявшихся девелоперов:


Тайминг:
00:00 - Вступление
00:36 - Требования
02:30 - Java Core
05:05 - ООП
05:50 - Методы обьекта Object
07:30 - Многопоточность
08:16 - SQL запросы
09:38 - Стеки технологий
12:15 - Хорошее резюме
Рекомендации по теме
Комментарии
Автор

Оплата помесячно. Чем быстрее учитесь, тем быстрее закончите!

SergeyNemchinskiy
Автор

Важное требование к джуну - быть мидлом

SmileyJack.
Автор

Выводы из данного видео:
02:30
1. Основы Java Core
• Навыки написания кода на языке Java.
• Знание синтаксиса языка.
• Умение читать и понимать код, написанный другими.
05:02
2. Три принципа ООП
• Инкапсуляция: Объединение данных и методов, работающих с ними, в единый компонент, называемый объектом. Инкапсуляция скрывает детали реализации и предоставляет интерфейс взаимодействия с объектом.
• Наследование: Механизм, позволяющий новому классу (подклассу) использовать и расширять функциональность существующего класса (суперкласса). Наследование способствует повторному использованию кода и созданию иерархии объектов.
• Полиморфизм: Возможность объектов разных типов использовать общий интерфейс. Полиморфизм позволяет работать с объектами, не зная их конкретного типа, что способствует универсальности кода и упрощает его расширение.
05:47
3. Методы класса Object в Java
• equals(Object obj): Метод сравнения объектов на равенство.
• hashCode(): Возвращает хеш-код объекта.
• toString(): Возвращает строковое представление объекта.
• clone(): Создает и возвращает копию объекта.
• finalize(): Вызывается перед удалением объекта сборщиком мусора.
• getClass(): Возвращает класс объекта.
• notify(): Позволяет разбудить один из ожидающих потоков.
• notifyAll(): Позволяет разбудить все ожидающие потоки.
• wait(): Приостанавливает поток до получения уведомления.
• wait(long timeout): Приостанавливает поток до получения уведомления или истечения времени ожидания.
• wait(long timeout, int nanos): Приостанавливает поток до получения уведомления, истечения времени ожидания или прерывания.
• finalize(): Вызывается перед удалением объекта сборщиком мусора.
06:20
4. Фреймворк коллекций (Collection Framework)
• Владение основными интерфейсами Java Collection Framework:
• List: Упорядоченный список с возможностью дублирования элементов.
• Set: Неупорядоченное множество уникальных элементов.
• Queue: Очередь для управления элементами в порядке FIFO.
• Map: Коллекция ключ-значение.
• Компетентность в использовании основных реализаций этих интерфейсов (например, ArrayList, HashSet, LinkedList).
• Понимание процессов сравнения элементов коллекций.
07:29
5. Многопоточность (Общий обзор)
• Базовое знакомство с ключевыми терминами и концепциями многопоточности.
• Поверхностное понимание основных принципов параллельного программирования.
08:13
6. SQL-запросы
• Навык создания SQL-запросов, включая:
• JOIN операции: Объединение данных из двух таблиц для получения более полной информации.
• Вложенные запросы: Использование одного запроса внутри другого для выполнения более сложных операций с данными.
• Группировка и агрегация: Использование GROUP BY и агрегатных функций (например, COUNT, SUM) для обобщения данных.
09:22
7. Стек фреймворков
Владение популярными фреймворками в экосистеме Java, включая:
• Hibernate (Объектно-реляционное отображение - ORM): Фреймворк, обеспечивающий сопоставление объектов Java с записями в базе данных. Он упрощает взаимодействие с базой данных, предоставляя объектно-ориентированный способ работы с данными.
• Spring Core (Умение писать аннотации для внедрения зависимостей): Ядро фреймворка Spring, предоставляющее базовые функции, такие как внедрение зависимостей (Dependency Injection) и обработка бинов. Умение писать аннотации важно для определения компонентов и их взаимосвязей.
• Spring Boot: Фреймворк, основанный на Spring, упрощающий конфигурацию и развертывание приложений. Spring Boot предоставляет множество умных настроек по умолчанию, позволяя быстро создавать самостоятельные приложения.
• Spring MVC (Model-View-Controller): Часть фреймворка Spring, предоставляющая архитектурный шаблон Model-View-Controller для разработки веб-приложений. Он обеспечивает разделение логики приложения на три компонента: модель (Model), представление (View) и контроллер (Controller).
• Spring Data (Доступ и манипуляции данными): Проект в рамках семейства Spring, упрощающий доступ и манипуляции данными в различных источниках данных, включая реляционные базы данных и NoSQL хранилища.
• Spring Security (Опционально, в зависимости от требований проекта): Модуль Spring, обеспечивающий мощные средства аутентификации и авторизации для приложений. Он помогает защитить приложение от различных видов атак и обеспечивает безопасность веб-приложений.

reaexp
Автор

Спасибо большое.
Учусь на андроид разработчика, углублусь ещё больше после ваших советов💪

Gle_Ban
Автор

Очень познавательное видео. Спасибо за Ваш труд!

xoxolpt
Автор

Работаю полтора года, на четверть вопросов не смог вспомнить хоть что то потому что не использую :D а когда то знал))

AndriiSobianin
Автор

отличное видео, теперь интересно посмотреть что должен знать джуниор в веб разработке

hhwtvzs
Автор

Спасибо, Сергей. Очень познавательно. Всегда с интересом смотрю ваши видео. Я правда слышал мнение, что на сегодняшний день джун - это вполне себе такой мидл 4-5 летней давности.

edmondhamilton
Автор

Полезное видео. Захотелось пересмотреть принципы SOLID.

commandoby
Автор

спасибо Сергей
очень важный видос для меня

CMAK
Автор

Отлично, как всегда гениально, как раз учу спринг но есть ощущение что дыры в обучении и что то недоучиваю, а тут свеженькое видео прекрасное, систематизирующее.

ebkjbih
Автор

Ого как требования подрасли...Добавить к этому Stream API, Completable Future, Atomic-тип и кое-что из фуллстэка (например Thymeleaf) - и вполне себе требования к (в недалеком прошлом) миддлам.

madcalm
Автор

Вообще школы типа Fox Minded - это дело важное и нужное. Они дают шанс обычному человеку войти в IT. Конечно лучше закончить Стенфордский Университет, но не у всех есть такая возможность. Критиковать можно абсолютно всё, но критикам надо понимать одну простую вещь - в обучении самый главный элемент - самообразования. Нужно уметь самому обнаружить пробелы в своих знаниях и самому уметь их устранить. А курсы и менторы просто в этом вам помогут

brianryan
Автор

Сергей хотел спросить, а подойдет ли данное видео для Junior C# Developer? Как взятая за основу с немногими изменениями

sergioramos
Автор

Сергей, скажите пожалуйста какие предметы из Computer Science вы учили в институте связи? SQL? C ++ ? Aлгоритмы? Сети? Линакс сервер? Вы учились с 1990 по 1996. Я тут спорю со всеми насчёт того какие предметы преподавались в то время. Или все необходимые для работы знания вы получили после института? Или может учили какой Фортран, а всё остальное выучили потом. Это будет интересно абсолютно всем вашим зрителям

brianryan
Автор

В первую очередь сейчас джун должен уметь врать про свой опыт :D

dmitrikonnov
Автор

Судя по всему, надо сразу на мидла учиться, ибо порог вхождения в профессию и требования постоянно растут, как и конкуренция. А так под конец обучения как раз будешь соответствовать хотелкам интервьюеров)

wnhmhfj
Автор

К сожaлению или к счастью, но озвученный стек годен скорее на позицию трейни. Потому что исходя из личного опыта, сейчас Java junior в целом должен хотя бы поверхностно знать Docker, k8s, aws.

vadzimkuzmenka
Автор

На рекламе реверб-эхо слишком сильное, передайте человеку делавшему обработку рекламного ролика (если это не вы). Дружелюбный фидбек - обожаю ваши подкасты!

jahstreetlove
Автор

Доброго дня @SergeyNemchinskiy, а що ви думаєте на рахунок необхідності знань про тестування коду для джуна?

eduefuz