
−55%
Программирование8 месяцев
Профессия: Python-разработчикКурсы обновляются вместе с индустрией
Знания, которые нужны здесь и сейчас
Без теории ради теории
Без устаревших подходов
С активным сообществом специалистов и каналом актуальных вакансий
Только до конца месяца - получите скидку до 57% на обучение и подарки на 135 000 ₽
Java-разработчик — это специалист, который создает надежные backend-системы для банков, корпораций и высоконагруженных сервисов. Его код обрабатывает миллионы операций ежедневно.
Java остается одним из самых востребованных и высокооплачиваемых языков программирования. Начинающие специалисты получают от 80 000 рублей в месяц, опытные разработчики — от 220 000 рублей, а эксперты в области Java в крупных компаниях — от 350 000 рублей. В международных проектах зарплаты достигают $6 000 и более.
Специалисты по Java работают над созданием банковских систем, ERP-решений, высоконагруженных веб-сервисов, мобильных приложений и систем обработки больших данных. Этот язык используют в Сбере, Т-Банке, Лаборатории Касперского, Яндексе и других технологических компаниях для разработки надежных и масштабируемых решений.
Знакомство с языком Java и инструментами
Базовый синтаксис Java
Переменные и типы данных в Java
Циклы и языковые конструкции в Java
Структуры данных
Системы контроля версий
Git & GitHub
Продвинутая работа с Git
Проект: Разработка кредитного калькулятора
Классы и объекты: начальный уровень
Классы и объекты: продвинутый уровень
Методы и поля классов
Обработка исключений
Работа с массивами
Строки и регулярные выражения
Практическая работа: Java. Основные концепции
Знакомство с алгоритмами
Обзор коллекций в Java
Коллекции: ArrayList и LinkedList, HashMap
Коллекции: HashSet, LinkedHashMap, LinkedHashSet
Коллекции: TreeMap, TreeSet
Stream api, lambda, optional
Проект: Консольное приложение для управления данными
Generic-типы. Runtime, wildcards & PECS
Работа с памятью JVM
Сериализация
Практическая работа: Java Core. Файлы и сеть. Сборка
Работа с сетью. OSI, TCP/IP, UDP, HTTP
Java библиотека NIO. Отличия IO и NIO
Многопоточное программирование в Java
Рефлексия в Java. Создание аннотаций
Системы автоматической сборки Java-проектов
Введение в базы данных
Базы данных. JDBC
Развитие проекта
SQL-запросы
Практическая работа: базы данных. SQL. PostgreSQL
Транзакции и уровни изоляции
ООП в Java
Принципы SOLID
Упрощаем код: YAGNI, DRY, KISS в Java-проектах
Свойства хорошего кода. Abstraction, Composition, Coupling, Cohesion
Введение в тестирование
Тестирование исходящих взаимодействий: outcoming. Мокинг
Среда тестирования Mockito
Практическая работа: Основы тестирования на Java
Тест-раннеры юнит-тестирования для Java: JUnit, TestNG
Основы интеграционного тестирования
Нагрузочное тестирование: JMeter
Инструмент тестирования: REST Assured
Основы BDD
Инструменты BDD для Java: Cucumber-JVM, Cukes-rest, JBehave
Инструменты тестировщика Java
Inversion of control. Dependency Injection
Что такое Spring framework и зачем он нужен?
Spring Application Context – от XML до Groovy
Spring Web. REST-архитектура и контроллеры
Spring JDBC. Работа с базой данных и построение запросов
Spring JDBC. Нестандартные запросы и транзакции
Hibernate. ORM – нет времени писать запросы
Spring Data: тот же Hibernate.. только лучше!
Практическая работа: Java Spring Framework
Servlets
Архитектура веб-сервиса, MVC, Spring Boot
Ведение журналов
Основы HTML. Язык разметки страницы
CRUD приложение. Create, Read, Update, Delete application
Основы клиент-серверного взаимодействия
Регистрация, аутентификация и авторизация
Java интеграция с backend
Проект от компании "Globus IT": Веб-приложение для мониторинга финансовых показателей
CI / CD
Многопоточность advanced
Масштабируемость
Искусственный интеллект для разработчика
Linux: введение и основные концепты ОС.
Контейнеризация. Знакомство с Docker
Упаковка приложений в Docker
Ansible: Основные концепции и команды
Ansible.Роли и переменные
Ansible. Разработка ролей
Инструменты работы в команде
Рост в тимлида
Дипломная работа
Введение в Android-разработку
Что дает специализация Android для Java-разработчика. Пути развития
Android Studio, SDK, эмулятор и первое приложение
Основные компоненты Android-приложения
Жизненный цикл Activity
User Interface
User Interface: Responsive UI
Основы Kotlin
Отображение списков Recyclerview
Fragments, FragmentManager
Работа в фоне
Networking
Persistence
Продвинутая разработка на Android
RXJava
Архитектура современных приложений
Работа с файлами, воспроизведение музыки
Загрузка и отображение изображений
Основы клиент-серверного взаимодействия
Работа с камерой и мультимедиа
Jetpack Compose
Основы веб-разработки
Что дает специализация Frontend. Fullstack-разработчик
Структура веб-страницы, базовый HTML
Базовый CSS, селекторы и каскад
Продвинутый CSS, адаптивность и кроссбраузерность
Основы языка, инструменты для разработки и отладки
Объекты, массивы, функции
DOM-модель и работа со страницей
Обработка событий
Взаимодействие с сервером
Расширенные возможности HTML и CSS. Работа с макетом, построение сложных сеток, адаптивная верстка
Git и GitHub: Настраиваем репозиторий для проекта
Формы HTML: построение, валидация, доступность
Flex или Grid? Основы создания макетов
Адаптивная и кроссбраузерная верстка
Основы тестирования верстки. DevTools
Улучшаем пользовательский опыт (UX) с помощью CSS-анимаций
Идеальная верстка: делаем Pixel Perfect по макету в Figma
JavaScript: базовый уровень
Введение. Переменные и работа с числами. Константы
Строки, boolean и условные операторы. Преобразование типов и нестрогие сравнения
Массивы и циклы. Объекты
Функции. Области видимости и замыкания
Обработка событий и пользовательский ввод
Подключение библиотек
Регулярные выражения. Форматирование. Работа с датами
Mикро и макротаски. Цикл событий
Анимации и CSS-фреймворки
Структуры данных и алгоритмы