На курсе ты изучишь
Программа курса
-
Java и области ее применения
Познакомишься с компанией Naumen и ее продуктами, а также узнаешь о языке Java и преимуществах профессии java-разработчика.
-
GIT
Узнаешь, зачем нужны системы контроля версий и какие они бывают. Изучишь особенности и преимущества Git. Поймешь, как программисты применяют Git в своей повседневной работе.
-
Java, Maven, Gradle
Познакомишься с языком Java, его особенностями и принципами работы. Разберешь, чем Java отличается от других C-подобных языков, и почему его используют в крупных проектах. Узнаешь, что такое Maven и почему стоит его применять.
-
Spring, Spring Core, Spring Boot
Изучишь понятие framework и принцип инверсии управления. Сделаешь обзор модулей Spring Framework и подробнее разберешь базовый модуль Spring Core. Рассмотришь преимущества Spring Boot в разработке web-приложений.
-
БД, Hibernate, Spring Data
Узнаешь, что такое базы данных и зачем нужен ORM. Поймешь, как работает Hibernate и как использовать Spring Data для взаимодействия с СУБД.
-
Spring WEB, Rest
Узнаешь, что такое HTTP, как создать REST-сервис и как все это реализуется в Spring.
-
Spring Security
Разберешься в основных понятиях, таких как идентификация, аутентификация и авторизация, а также в их видах. Изучишь архитектуру и принцип работы Spring Security, поймешь, как реализованы некоторые виды аутентификации в Spring Security.
-
Многопоточность и асинхронность в Java
Поймешь, как эффективно работать в условиях высоких нагрузок. Рассмотришь, чем многопоточность отличается от асинхронности. Напишешь многопоточный код и попробуешь его оптимизировать.
-
Автоматизированное тестирование
Погрузишься в теорию автоматизированного тестирования и познакомишься с инструментами тестировщика. Разберешься, что такое юнит-тесты, REST API и функциональное тестирование. Научишься писать автотесты с помощью различных фреймворков.
-
Архитектура приложений
Узнаешь, с чего начать работу над проектом, зачем нужна архитектура и проектирование ПО. Освоишь методы определения требований к продукту и архитектурные стили. Познакомишься с шаблонами проектирования, их разновидностями и областями применения.
-
Устройство памяти в JVM
Изучишь модель памяти и поймешь, как она устроена в Java. Разберешь основные области памяти JVM, узнаешь, как происходит аллокация и определение недоступных объектов. Освоишь алгоритмы уборки мусора, типы сборщиков мусора в Java и инструменты, которые помогут анализировать работу памяти в языке.
-
Инструменты автоматизации
Узнаешь, что такое контейнеризация и оркестрация. Соберешь и запустишь Java-приложение с использованием Docker, Docker Compose и Kubernetes, а также разберешь их основные отличия и преимущества. Познакомишься с основами CI/CD и поймешь, как применять статический анализ с помощью SonarQube и SonarLint.
-
Защита проектов
В течение семестра ты будешь работать над проектом по согласованному техническому заданию. Сможешь обращаться за консультацией к куратору — разработчику Naumen. В конце семестра самостоятельно или вместе с командой представишь проект экспертам.
-
Быстрые собеседования
Попробуешь себя в роли кандидата. Подготовишь резюме и отработаешь самопрезентацию. Научишься грамотно отвечать на вопросы рекрутера. После собеседования получишь обратную связь от экспертов.
Учим так, чтобы был результат
Подай заявку на курс
Хочешь узнать больше о карьере в Naumen?
Подписывайся на
Узнать ещё больше
Naumen Карьера Образовательные программыЕсли возникли вопросы о работе в компании, пишите на nautrainee@naumen.ru