Новая программа
Java Developer. Professional
Освойте создание современных Java-приложений
26 декабря
Professional
6 месяцев
Онлайн
Вт/Чт 20:00 Мск
Для кого этот курс?
- Для программистов Java с практическим опытом разработки
- Для программистов на других языках ООП с опытом разработки от 3-х лет
Необходимые знания
- Опыт разработки на Java от 1 года / опыт разработки на другом языке от 3 лет (приветствуются любые языки ООП)
- Понимание основных структур данных и алгоритмов
- Знание принципов ООП
- Знание Git на уровне уверенного пользователя
- Будет плюсом опыт работы с базами данных
- Будет плюсом понимание основ веб-разработки
Что даст вам этот курс?
Знание актуального стека технологий, 96 часов практической работы, детальный разбор технологий изнутри - мы не просто следуем каким-то принципам, а рассказываем откуда они взялись, и что будет, если их нарушить.
После обучения вы:
- Сможете создавать современные java-приложения
- Поймете основы функционирования JVM (сборка мусора, byteCode)
- Освоите приемы применения многопоточности.
- Самостоятельно решать задачи уровня Middle+
Дополнительно на курсе вы:
- Получите практику решения сложных задач с подробным код ревью от экспертных Java-разработчиков
- Расширите возможности использования языка Java
- Откроете для себя подходы, которые позволят писать код быстрее и чище
Освоите современные фреймворки
Spring WebFlux, Kafka, реактивный Postgres, Kubernetes.600+ студентов, прошедших курс Java Professional в Отус.
Процесс обучения
А если вы не смогли посетить занятие в реальном времени, то сможете посмотреть его в записи и задать вопрос преподавателю в закрытом Telegram-чате.
Программа
Продвинутое программирование на Java: все, что надо знать и уметь Middle+ специалисту
Свой проект
Студент пишет выпускной проект на любую тему под контролем преподавателя
Портфолио
Проекты внутри домашних заданий + выпускной проект, который усилит ваше портфолио.
Партнеры
- Разместите свое резюме в базе OTUS и сможете получать приглашения на собеседования от партнеров
- Получите рекомендации, как искать работу, и советы по прохождению собеседования
Работодатели курса
Формат обучения
Интерактивные вебинары
2 онлайн-трансляции по 2 ак.часа в неделю. Доступ к записям и материалам остается навсегда
Программа для профессионалов
Альтернатива популярным программам "с нуля" - для профессионалов, кто хочет поднять свой грейд
Коммьюнити
Модерируемый ТГ-чат для общения преподавателей и студентов
Программа
Язык и платформа Java
В этом модуле изучаются фундаментальные основы работы Java Virtual Machine (JVM) и "тонкие" аспекты языка Java. В результате обучения студент сможет достаточно подробно рассказать как выполняется Java программа и что проиходит "под капотом".
Тема 1: Подготовка к курсу. ДЗ
Тема 2: Дополнение к gradle. Логирование.
Тема 3: QA и тестирование
Тема 4: Контейнеры и алгоритмы. ДЗ
Тема 5: Инструменты для преобразования контейнеров, unsafe, jmh
Тема 6: Аннотации. ДЗ
Тема 7: Lombok
Тема 8: Сборщик мусора. ДЗ
Тема 9: Java в Docker-е
Тема 10: Байт код, class-loader, инструментация, asm. ДЗ
Тема 11: Функциональное программирование в Java
Проектирование
В этом модуле рассматриваются принципы проектирования SOLID и паттерны проектирования GOF. В ходе выполнения Домашних Работ студент сможет на практике научиться применять паттерны проектирования и их комбинации.
Тема 1: Концепты проектирования ООП. ДЗ
Тема 2: Creational patterns
Тема 3: Behavioral patterns
Тема 4: Structural patterns. ДЗ
Работа с окружением
Этот блок посвящен вопросам взаимодействия java-приложения с внешним миром. Рассматриваются операции с файловой системой, механизмы сериализации/десериализации объектов. Большое внимание уделяется работе с реляционными базами данных. Подробно изучаются jdbc и Hibernate. При этом не забываем про noSQL. В качестве примера работы с noSQL рассматривается реактивное взаимодействие с MongoDb. Особое внимание уделяется разработке Web-серверов. Изучаем TomCat как пример контейнера war-приложений и Jetty - как встроенный web-сервер, учимся применять технологию web-сокетов. В качестве примера Dependency Injection изучаем Spring и Spring Boot.
Тема 1: Сериализация. ДЗ
Тема 2: NIO - операции с файлами
Тема 3: JDBC. ДЗ
Тема 4: Общие вопросы работы с СУБД, архитектура РСУБД
Тема 5: Hibernate
Тема 6: JPQL. ДЗ
Тема 7: Типы ссылок. Кэширование. ДЗ
Тема 8: Знакомство с Redis
Тема 9: Web сервер. ДЗ
Spring
Модуль посвящен изучению основ Spring Framework. В этом модуле разберемся в принципах DI, IoC, поймем как это используется в Spring. Изучим как на технологиях Spring-а создать Web-приложение с базой данных.
Тема 1: Dependency injection. ДЗ
Тема 2: Spring Boot. Spring MVC
Тема 3: Asynchronous Web applications
Тема 4: Spring Data Jdbc. ДЗ
Многопоточность
Этот модуль посвящен многопоточности в разных ее проявлениях. Начинаем изучение с разбора Java Memory Model, какова цель ее создания, что решается и как это использовать. Заканчиваем Completable Future. Начинаем разрабатывать многопоточные приложения и переходим к разработке многопроцессорных приложений - приложения, отдельные части которых работают на разных хостах. Чтобы понять как объединить такие приложения, изучаем блокирующие и неблокирующие сокеты (NIO).
Тема 1: Thread
Тема 2: JMM
Тема 3: Executors. ДЗ
Тема 4: Потокобезопасные коллекции. ДЗ
Тема 5: Многопроцессные приложения. ДЗ
Тема 6: Применение RabbitMQ
Тема 7: NIO
Тема 8: Netty
Тема 9: Реактивное программирование. Spring Webflux. ДЗ
Тема 10: Применение Kafka
Проектная работа
Заключительный месяц курса посвящен проектной работе. Свой проект - это то, что интересно писать студенту. То, что можно создать на основе знаний, полученных на курсе. При этом не обязательно закончить его за месяц, однако к защите надо разработать действующий прототип, который пояснит идею проекта. В процессе написания по проекту можно получить консультации преподавателей. Для достижения результата работа над проектом организуется в виде недельных итераций. Проект должен стать примером кода, который можно показывать потенциальным работодателям. Студент может самостоятельно выбрать технологии из числа изученных на курсе и/или использовать что-то дополнительно. Примеры тем: - телеграм-бот - распределенный кэш - web сервер (разберите протокол) - socket сервер на NIO (как netty) - свой ORM - кэш для hibernate
Тема 1: Основы CI/CD
Тема 2: Знакомство с Kubernetes
Тема 3: Защита проектных работ
Также вы можете получить полную программу, чтобы убедиться, что обучение вам подходит
Выпускной проект
На основе умений и знаний полученных в курсе студент выбирает какой проект будет реализовывать. С нашей стороны будет помощь и наставничество в реализации проекта. Проект станет хорошим пополнением вашего портфолио.
Преподаватели
Эксперты-практики делятся опытом, разбирают кейсы студентов и дают развернутый фидбэк на домашние задания
Ближайшие мероприятия
Открытый вебинар — это настоящее занятие в режиме онлайн с преподавателем курса, которое позволяет посмотреть, как проходит процесс обучения. В ходе занятия слушатели имеют возможность задать вопросы и получить знания по реальным практическим кейсам.
Программа урока:
- Зачем нужен Kafka-appender для логгера.
- Подходы к разработке собственного Kafka-appender.
- Шаги по созданию Kafka-appender для логгера.
- Практические рекомендации
Урок будет полезен:
- Java-разработчикам.
- Специалистам по интеграции систем.
- Всем, кто интересуется разработкой собственных инструментов для решения специфических задач.
В результате урока вы получите:
- Понимание необходимости создания собственного Kafka-appender для логгера и ситуаций, когда это оправдано.
- Знание основных подходов и шагов по разработке Kafka-appender на Java.
- Практические навыки, позволяющие самостоятельно реализовать этот функционал в ваших проектах.
Программа урока:
- Понимание Observability.
- Применение Observability в Java-приложениях.
- Практические аспекты
Урок будет полезен:
- Java-разработчикам.
- Системным архитекторам.
- Всем, кто интересуется разработкой собственных инструментов для решения специфических задач.
В результате урока вы получите:
-Четкое понимание того, что такое Observability и почему он необходим в современных приложениях.
- Знания о том, как применить принципы Observability в Java-приложениях.
- Практические советы по внедрению наблюдаемости в ваших проектах.
Программа урока:
- Введение в Resilience4.
- Применение Resilience4j для улучшения стабильности.
Урок будет полезен:
- Java-разработчикам.
- Системным архитекторам.
- Всем, кто интересуется разработкой собственных инструментов для решения специфических задач.
В результате урока вы получите:
- Понимание того, что такое Resilience4j и как он помогает обеспечить стабильность приложений.
- Знания о применении Resilience4j в ваших Java-проектах для улучшения их отказоустойчивости.
- Практические советы и примеры для эффективной интеграции Resilience4j в ваше приложение.
Прошедшие
мероприятия
Возможность пройти вступительное тестирование повторно появится только через 3 дня
Результаты тестирования будут отправлены вам на email, указанный при регистрации.
Тест рассчитан на 30 минут, после начала тестирования отложить тестирование не получится!
Корпоративное обучение для ваших сотрудников
- Курсы OTUS верифицированы крупными игроками ИТ-рынка и предлагают инструменты и практики, актуальные на данный момент
- Студенты работают в группах, могут получить консультации не только преподавателей, но и профессионального сообщества
- OTUS проверяет знания студентов перед стартом обучения и после его завершения
- Простой и удобный личный кабинет компании, в котором можно видеть статистику по обучению сотрудников
- Сертификат нашего выпускника за 5 лет стал гарантом качества знаний в обществе
- OTUS создал в IT более 120 курсов по 7 направлениям, линейка которых расширяется по 40-50 курсов в год
Отзывы
Сертификат о прохождении курса
OTUS осуществляет лицензированную образовательную деятельность.
В конце обучения вы получите свидетельство о повышении квалификации и сертификат OTUS о прохождении курса
После обучения:
- заберете с собой полный комплект обучающих материалов: видеозаписи всех вебинаров, презентации, примеры кода
- повысите свою компетенцию в сфере разработки на Java до Middle+
- научитесь разрабатывать коммерческие приложения самостоятельно и в команде
Java Developer. Professional
Полная стоимость
Стоимость указана для оплаты физическими лицами
вычета до 13% стоимости обучения. Пройдите тестирование и менеджер вас проконсультирует
+7 499 938-92-02 бесплатно