Java [HeadBridge] Middle Java Developer. Пакет "Полный курс" (2023)

  • Автор темы Fox
  • Дата начала
Fox
Редактор
1,569
23,786
Автор: [Цифровые привычки - HeadBridge] Алексей Р., Алексей М., Андрей С., Михаил К., Владислав К., Андрей С., Роман О. и др
Название: Middle Java Developer (2023)
Тариф: Пакет "Полный курс"

Screenshot_4.png


Кратная программа курса Middle Java Developer
  • Java Core
  • Java Memory Model
  • Spring
  • Архитектура web приложений
  • Базы данных
  • Kafka
  • Облачные технологии
  • Процессы разработки


Кому подойдет этот курс?

Junior-разработчикам

Углубишься в Java-разработку и изучишь востребованный стек технологий. Пополнишь портфолио и сможешь перейти на Middle уровень

Middle-разработчикам
Расширишь свой стек технологий, прокачаешь навыки и сможешь перейти на более интересный и сложный проект

Выпускникам курсов
Научишься применять знания на практике, начнешь работать с новым стеком и сможешь устроиться на проект


Чему ты научишься?
  • Работать с современным стеком
    Получишь практический опыт работы с Docker, Spring, Kubernetes, Istio, Kafka
  • Разрабатывать архитектуру приложений
    Научишься работать с архитектурными паттернами и паттернами проектирования
  • Тестировать приложения
    Научишься правильно писать unit-тесты, разберешься в устройстве Spring Boot Test
  • Работать с многопоточностью
    Научишься создавать многопоточные приложения
  • Эффективно работать с БД
    Поймешь разницу между SQL и NoSQL решениями, когда что лучше применять, научишься оптимизировать SQL запросы
  • Проходить собеседования
    Научишься решать задачи уровня Middle и уверенно проходить технические интервью

Программа обучения
Программа была разработана практикующими экспертами в Java-разработке на основе реальных задач, с которыми работает Java-разработчик. Мы регулярно дополняем и улучшаем программу актуальными темами и технологиями.

Java Core + Spring

1,5 месяца

4 живые лекции - 8 часов
4 практических занятия - 8 часов
3 групповые ментор-сессии - 4.5 часа
4 домашних задания
Видеоматериалы

Java Core
  • Java Core
Основы Java, которые часто пропускают. Разберем, что такое classloaders, и как сделать настоящий immutable класс.

  • Java Collections Framework
Подробно разберём внутреннее устройство коллекций, проанализируем алгоритмическую сложность, и научимся грамотно выбирать наиболее подходящую под конкретные виды задач.

  • Stream API
Освоим навыки работы с потоками: способы их создания, свойства и особенности реализации. И самое главное — научимся решать емкие задачи кратко и лаконично.

  • Garbage collector
Разберемся, как работают Garbage collectors, какими они бывают, чем отличаются друг от друга. Узнаем, почему может возникнуть утечка памяти и как с ней бороться.


Java Memory Model
  • Java Memory Model
Поговорим об atomicity, visibility и reorderinghappens-before. Разберем фундаментальные вещи, которые вводят энтропию в многопоточный код.

  • Инструменты сборки
Сравним две популярные системы сборки — Maven и Gradle. Научимся находить и правильно разрешать конфликты транзитивных зависимостей. Покажем, для чего в Gradle нужен wrapper и как написать свои таски.

  • Multithreading in Java + дополнительное задание
Расскажем, как делать правильный многопоточный конвейер и безопасно проводить финансовые операции в конкурентной среде.

  • Паттерны разработки
Расскажем, почему шаблоны проектирования — это важный инструмент разработчика, который помогает ему сэкономить время и сделать более качественное решение. Разберем виды шаблонов, как и когда их применять.


Spring
  • Spring Core
С помощью простых и наглядных примеров разберем, в чем преимущество принципа DI, и зачем нужен IoC контейнер. Попробуем три способа конфигурации Spring-приложения и три способа внедрения зависимостей. На практике разберемся с Bean Definitions, Bean Scopes и BeanPostProcessor.

  • Домашнее задание №1
Реализовать веб-сервер на Spring Boot по работе с сущностями Person и Department. Реализовать базовые CRUD операции над ними, написать unit-тесты и задеплоить его на Heroku.

  • Spring Boot
Узнаем исторические предпосылки появления Spring Framework и Spring Boot. Поймем, в чем их отличие и секрет успеха. Заглянем под капот Spring Boot и поработаем с автоконфигурацией. Более детально познакомимся с фазами инициализации контекста, жизненного цикла бинов, конфигурацией пользовательских настроек.

  • Домашнее задание №2
Реализовать загрузку property-файлов из файловой системы и из classpath в общий пул properties Spring.

  • Spring Modules
Узнаем, как Spring Data делает жизнь разработчика лучше, а Spring MVC ставит написание RESTful сервисов на поток. Мы вместе напишем приложение, которое ответит на эти и многие другие вопросы. А также убедимся на практике, что TDD — не пустой звук, а unit-тесты — неотъемлемая часть процесса разработки.

  • Тестирование + Spring Boot Test
Уделим внимание теме тестирования в целом и Spring Boot Test в частности. Посмотрим на пирамиду тестирования и определим место Java-разработчика в ней. Поговорим о разных типах тестов и наиболее распространенных ошибках при их написании.


Микросервисы

1,5 месяца

7 живых лекций - 14 часов
3 практических занятия - 6 часов
4 групповые ментор-сессии - 6 часов
4 домашних задания
Видеоматериалы


Архитектура web-приложений
  • Архитектура web-приложений
Разберемся, как строятся современные промышленные приложения, и научимся правильно соединять крупные компоненты наших систем между собой. Слои, протоколы, коннекторы — это лишь малая часть терминов, которые ты освоишь.

  • Сети
Поговорим о моделях OSI и TCP/IP, какие протоколы туда входят, и как это поможет разработчику. Подробно разберем HTTP и HTTPS. Также уделим время WebSockets и безопасности в сети: сертификаты, инфраструктура x.509, и как это все работает в Java.


Базы данных
  • Databases
SQL vs NoSQL vs NewSQL. Расскажем, как разобраться с многообразием баз данных, когда какую использовать. Дадим практические примеры, чтобы ты разобрался в CAP теореме и понял, как она может помочь в жизни.

  • SQL
Разберем SQL на продвинутом уровне. Расскажем о малоизвестных фичах, которые позволяю писать быстрые запросы. Также поговорим о грамотном проектировании БД.

  • Databases: Optimization
Научим оптимизировать базы данных для повышения производительности приложений. Расскажем о методах оптимизации, которые помогут ускорить запросы.


Kafka
  • Async Java with Kafka
Рассмотрим плюсы и минусы синхронного и асинхронного подхода, поговорим, когда и что применять. Разберем работу с очередями: какие преимущества они дают, какие сложности возникают при их использовании. Рассмотрим внутреннее устройство Apache Kafka, посмотрим на примере взаимодействие Producer – Consumer с помощью Spring Boot + Spring Kafka Client.

  • Kafka+Spring

Облачные технологии
  • Docker
Покажем, из чего состоит docker образ и как его создать. Разберем способы уменьшения размера образа: multistage билды, buildpacks, alpine base images. Покажем, как с помощью docker-compose развернуть десяток микросервисов за пару минут.

  • Kubernetes (K8S)
Обсудим предпосылки появления технологии оркестрации контейнеров, поговорим про устройство кластера Kubernetes. Рассмотрим основные абстракции: Pod, Service, Deployment, Volume, Secret и т.д. Разберем, как устроена overlay сеть и как опубликовать сервис "наружу" кластера. Узнаем, зачем нужен Ingress. Рассмотрим примеры деплоя сервисов в Manager кластер Kubernetes на DigitalOcean. В завершении лекции поговорим про шаблонизатор Helm как production-ready средство для работы с кластерами.

  • Istio
Поговорим про паттерн Service Mesh, обсудим проблемы, которые он решает. Разберем одну из реализаций Service Mesh – Istio, а также обсудим внутреннее устройство и новые типы абстракций: Gateway, VirtualService, DestinationRule и т.д. Как и в прошлой лекции, для демонстрации будем использовать Manager кластер Kubernetes в DigitalOcean, установим в него Istio и рассмотрим примеры настройки.


Процессы разработки
  • Agile, Scrum, Kanban
Разберем гибкие методологии. Расскажем, как правильно внедрять и использовать Scrum, Kanban и XP, чтобы это не тормозило разработку, а помогало ей.

  • CI/CD
Разберемся, что такое CI/CD, где и зачем применяются эти практики, в решении каких проблем помогают. Обсудим, какие подходы и методы применяются при внедрении практик CI/CD в процессах разработки и развертывания приложений.


Подробнее:
Скачать:

1

Модули пополняются.
 
Последнее редактирование:
Fox
Редактор
1,569
23,786
Добавлены 2, 3, 4 модули.
 
Fox
Редактор
1,569
23,786
Добавлены "Живые лекции" с 1 по 9, всего их будет 16.
 
Сверху