Разработчик на Spring Framework: программирование веб-приложений на Spring, фреймворки и вспомогательные технологии Spring
Черная пятница уже наступила!
Все курсы ноября со скидкой 30%. Торопитесь!
Подробнее

Курсы

Курсы в разработке Подготовительные курсы
Работа в компаниях Компаниям Блог +7 499 110-61-65
Специальная цена

Разработчик на Spring Framework

Курс о разработке веб-приложений на Spring, о фреймворках и вспомогательных технологиях Spring.
Подойдет ли мне этот курс?

Длительность

5 месяцев

Начало

26 ноября

Занятия

Вт 20:00, Пт 20:00

Общая стоимость

60 000 ₽ 42 000 ₽

В месяц

15 000 ₽

В кредит:

15000 ₽ в месяц

Хочу дешевле
Общая стоимость
60 000 ₽ 42 000 ₽
В месяц: 15 000 ₽
В кредит: 42000 ₽
в месяц
Продолжительность
5 месяцев, 4 академ. часа в неделю
Вт 20:00, Пт 20:00
Начало занятий
26 ноября
Что даст вам этот курс


  • Умение «выживать» в проектах, где есть Spring;

  • Знание современных возможностей Spring;

  • Понимание, как создавать Web-приложения на микросервисной архитектуре и решать высокоуровневые задачи по разработке;

  • Умение быстро проходить путь от идеи до production-grade;

  • Владение фреймворками Spring и технологиями вспомогательных проектов (Spring MVC, Spring Security, Spring Boot, Spring Reactive Stack, Spring 5).


Уникальная авторская программа


31 работодатель пригласят лучших выпускников на собеседования

Большое число проектов Spring, затрагивающих все сферы разработки

Изучается современный Reactive стек Spring, который не рассматривается нигде
Преподаватели
Вячеслав Лапин
Виталий Куценко
Дмитрий Коган
DXC
Юрий Дворжецкий
Luxoft Training Center
Сергей Петрелевич
Raiffeisen Bank, Capital Markets
Lead Software Developer в компании "xCritical Software" в г. Санкт-Петербург. Образование: ВМиК МГУ, Горный институт.

Опыт работы в ведущих компаниях IT — Kaspersky Lab, 1C, Крок, AT-Consulting, Luxoft, «Ланит». Внедренец инноваций и лучших практик в «Кровавый Энтерпрайз» — исследует новые технологии и «продаёт» их на крупные IT-проекты, делая их более гибкими, надёжными, быстрыми и современными, не потеряв при этом в функциональности.

Более 12-ти лет в IT, более 3 лет опыта управления командами разработчиков.

В 2004 году окончил химический факультет МГУ им М. В. Ломоносова, в 2005 — вечерний факультет МИФИ по специальности «Инженер-системотехник».

Программировать начал ещё в школе, а с 2003 года занимается этим профессионально. Сначала специализировался на Delphi, но в 2007 переключился на Java.

Участвовал в проектах разных размеров и нагрузки: от небольших на несколько рабочих мест одного предприятия до более значительных, связанных с обработкой потоков данных крупнейших банков мира. Работал в таких компаниях, как Diasoft, 1C, Luxoft, «Росгосстрах», «Сбербанк».

Адепт идеи о максимальной автоматизации процессов разработки, тестирования и сопровождения ПО. TeamLead по должности и по духу.

Преподаватель
Был президентским стипендиатом (одним из двух лучших студентов) в университете, занимался нелинейными динамическими системами, поведением нейронов и детерминистическим хаосом, учил немецкий язык – и в возрасте 18 лет отправился на свою первую, но не последнюю полугодовую практику на немецкую фирму DASA (DaimlerChrysler Aerospace), ставшую позже фирмой EADS (European Aeronautic Defence and Space), а ещё позже – Airbus. Там ещё в 90-х в качестве web-разработчика пробовал писать апплеты на Java. Апплеты дико не взлюбил, и как показало будущее, которого у апплетов не было, был прав.
В 2000 году по окончании университета, разминувшись тогда с готовой карьерой преподавателя, остался работать в Германии. А в 2002 году вместе со всем IT-отделом перешёл в немецкое подразделение американского IT-гиганта CSC, который не так давно слился с HP Enterprise в новую фирму – DXC, купившую всем известный Luxoft.
На данный момент, является председателем совета предприятия. Публицист. Спортивный журналист. Блогер.
Играет в “Что? Где? Когда?” (был чемпионом Германии), в компьютерные игры (на это, правда, совсем нет времени) и на скрипке (когда друзьям нужен кто-то, с кем можно сыграть дуэт).

Преподаватель
Тренер в Luxoft Training Center, ведущий разработчик, кандидат физико-математических наук.
Программирует с начальных классов.

Разрабатывает на разных платформах: большие и маленькие проекты, высоконагруженные и очень красивые, многим известные и совсем специфические.

Влюблён в элегантность и оригинальность JavaScript как классического, так и современного во всех его проявлениях.

Сейчас разрабатывает web-приложения c UI на React и Angular.

Руководитель программы
В отрасли с 2003 года. Программировать начал со времен ZX-Spectrum. 8 лет в разработке банковских процессинговых систем пластиковых карт.

Занимался разработкой "коробочных" систем для внешних заказчиков, разработкой систем для внутренних заказчиков. В 2003 году с отличием закончил Магнитогорский Государственный Институт им. Носова, специальность — промышленная электроника.

Компании:
Магнитогорский Металлургический Комбинат, Компас+, Borlas, СМП Банк.

Интересы:
JavaScript, многопоточное программирование, сборщики мусора в Java.

Сдал экзамен Oracle по Java:
Oracle Certified Professional, Java SE 8 Programmer

Преподаватель
Вячеслав
Лапин
Виталий
Куценко
Дмитрий
Коган
Юрий
Дворжецкий
Сергей
Петрелевич
Преподаватели
Вячеслав Лапин
Lead Software Developer в компании "xCritical Software" в г. Санкт-Петербург. Образование: ВМиК МГУ, Горный институт.

Опыт работы в ведущих компаниях IT — Kaspersky Lab, 1C, Крок, AT-Consulting, Luxoft, «Ланит». Внедренец инноваций и лучших практик в «Кровавый Энтерпрайз» — исследует новые технологии и «продаёт» их на крупные IT-проекты, делая их более гибкими, надёжными, быстрыми и современными, не потеряв при этом в функциональности.

Более 12-ти лет в IT, более 3 лет опыта управления командами разработчиков.

Виталий Куценко
В 2004 году окончил химический факультет МГУ им М. В. Ломоносова, в 2005 — вечерний факультет МИФИ по специальности «Инженер-системотехник».

Программировать начал ещё в школе, а с 2003 года занимается этим профессионально. Сначала специализировался на Delphi, но в 2007 переключился на Java.

Участвовал в проектах разных размеров и нагрузки: от небольших на несколько рабочих мест одного предприятия до более значительных, связанных с обработкой потоков данных крупнейших банков мира. Работал в таких компаниях, как Diasoft, 1C, Luxoft, «Росгосстрах», «Сбербанк».

Адепт идеи о максимальной автоматизации процессов разработки, тестирования и сопровождения ПО. TeamLead по должности и по духу.

Преподаватель
Дмитрий Коган
DXC
Был президентским стипендиатом (одним из двух лучших студентов) в университете, занимался нелинейными динамическими системами, поведением нейронов и детерминистическим хаосом, учил немецкий язык – и в возрасте 18 лет отправился на свою первую, но не последнюю полугодовую практику на немецкую фирму DASA (DaimlerChrysler Aerospace), ставшую позже фирмой EADS (European Aeronautic Defence and Space), а ещё позже – Airbus. Там ещё в 90-х в качестве web-разработчика пробовал писать апплеты на Java. Апплеты дико не взлюбил, и как показало будущее, которого у апплетов не было, был прав.
В 2000 году по окончании университета, разминувшись тогда с готовой карьерой преподавателя, остался работать в Германии. А в 2002 году вместе со всем IT-отделом перешёл в немецкое подразделение американского IT-гиганта CSC, который не так давно слился с HP Enterprise в новую фирму – DXC, купившую всем известный Luxoft.
На данный момент, является председателем совета предприятия. Публицист. Спортивный журналист. Блогер.
Играет в “Что? Где? Когда?” (был чемпионом Германии), в компьютерные игры (на это, правда, совсем нет времени) и на скрипке (когда друзьям нужен кто-то, с кем можно сыграть дуэт).

Преподаватель
Юрий Дворжецкий
Luxoft Training Center
Тренер в Luxoft Training Center, ведущий разработчик, кандидат физико-математических наук.
Программирует с начальных классов.

Разрабатывает на разных платформах: большие и маленькие проекты, высоконагруженные и очень красивые, многим известные и совсем специфические.

Влюблён в элегантность и оригинальность JavaScript как классического, так и современного во всех его проявлениях.

Сейчас разрабатывает web-приложения c UI на React и Angular.

Руководитель программы
Сергей Петрелевич
Raiffeisen Bank, Capital Markets
В отрасли с 2003 года. Программировать начал со времен ZX-Spectrum. 8 лет в разработке банковских процессинговых систем пластиковых карт.

Занимался разработкой "коробочных" систем для внешних заказчиков, разработкой систем для внутренних заказчиков. В 2003 году с отличием закончил Магнитогорский Государственный Институт им. Носова, специальность — промышленная электроника.

Компании:
Магнитогорский Металлургический Комбинат, Компас+, Borlas, СМП Банк.

Интересы:
JavaScript, многопоточное программирование, сборщики мусора в Java.

Сдал экзамен Oracle по Java:
Oracle Certified Professional, Java SE 8 Programmer

Преподаватель
Отзывы
9
Елена
Кущенко
Впечатления от курса строго положительные)
Грамотно составленная программа с широким охватом тем, отличные учебные материалы и конечно высокая квалификация преподавателей. Курс помог мне систематизировать знания, восполнить пробелы и разобраться в новых для меня технологиях и подходах. Кроме того, домашние задания и проектная работа дают возможность приобрести множество востребованных практических навыков.
Спасибо команде Otus =)
Читать целиком
Martin
Martin
Первое, о чем хочу сказать, это о преподавателе - Юрии Дворжецком.
После долгих 5 месяцев работы возникло огромное желание поработать под его руководством и в реальной жизни.
На протяжении всего курса была с его стороны поддержка в чате (чуть не 24/7), в критических ситуациях - удаленный дебаг.
Харизма преподавателя это то, что заряжало, позволяло не опускать руки, идти до конца. Именно за это Юрию от меня огромная благодарность!

Теперь о курсе. Шел на него с нормальным стажем С++ и уверенным знанием Java core. Из курса где-то 85% материала оказалось для меня новым.
Курс тяжелый. Но многое зависит от студента. Некоторые домашки можно сделать за 10 минут путем копипастинга кода из лекции, а можно подойти к ней, как к настоящей боевой задаче, и потратить пару недель.
Для успешного прохождения курса мне потребовалось брать отпуск. Перед принятием решения о поступлении на курс нужно быть готовым к серьезной работе.
Лекции пересматривать ни раз и ни два. Изучался дополнительный материал.
Программа грамотна составлена, полностью охватывает современные технологии разработки на Spring. Code review домашних заданий строг и беспощаден. В рамках курса была привита любовь в unit тестам.

Хочу так же отметить и общую доброжелательную атмосферу на курсе, отличная взаимопомощь в чате, как говорил Юрий: "У нас Community".

Буду рекомендовать ли я курс? Да.
Читать целиком
Руслан
Мустаев
Добротный, качественный курс с полным погружением.
Домашние задания заставляют проработать всё, а не оставаться в состоянии "вроде всё понял, но сделать ничего не могу".
Для меня курс был тяжелым, ничего не успевал, но в конце всё таки преодолев себя сдал все ДЗ и проект. Готовьте много свободного времени, но оно того стоит.
Преподаватель Юрий Дворжецкий - высший пилотаж как с технической стороны, так и со стороны soft skills.
Читать целиком
Алексей
Фальштынский
Отличный курс! Интересная, грамотно продуманная программа!
Лучший преподаватель - Юрий Дворжецкий! Интересный, харизматичный, нескучный. Присутствовать на лекциях было одним удовольствием!)
Наличие домашних заданий предоставляют возможность отработать полученные знания на практике!
Проектная работа - это вообще бомба! Мотивация просто зашкаливала. Наконец, реализовал идею почти 5-летней давности) Ну почти реализовал, остались еще доработки, но все же)
Спасибо всем за проделанную работу!
Читать целиком
Данаил
Кондов
Курс позволил познакомиться с современными технологиями разработки с использованием Spring Framework и, безусловно, стоит затраченных на него времени и усилий. Помимо лекций самым продуктивным моментом было живое общение с ведущими разработчиками, позволившее наименее болезненно преодолевать высокий порог вхождения в новые темы.
Читать целиком
Вадим
Чернов
Замечательный курс!

Умно построенная программа. Умные, внимательные преподаватели. Умные, интересные задания! Короче, всё умно, внимательно, интересно!!!!!
Мне курс очень помог.
1) Узнал много нового
2) То что знал — переоценил, взглянул на знакомые вещи с другой стороны.
3) Нащупал направление развития собственных проектов.
4,5,6....) Всё очень круто!

Огромное спасибо, ребята!!!!
Вы - МОЛОДЦЫ!!!!
Читать целиком
Александр
Шумилин
Халосый)
Читать целиком
Павел
Богданов
Курс очень здорово структурирован, отличный баланс теории/практики. Юрий замечательный преподаватель - все очень ясно и на примерах объясняет. Ведет абсолютно не скучно, часто приводит какие-то примеры из собственного опыта. Домашние задания начинаются с самых элементарных и заканчиваются уже действительно серьезными вещами (облака, микросервисы - это все), особенно понравилось задание по Integration, на последних этапах немного касались Docker/Kubernetes. В курсе раскрываются самые современные технологии и подходы такие как Reactive Streams и как они интегрированы в Spring и SQL/NoSQL БД и, собственно как Spring с ними взаимодействует, был краткий экскурс в современный фронтенд (достаточно поверхностно, но интересно), имеется также краткое введение в JPA/Hibernate. В общем, рекомендую, особенно если только освоили Java Core - это правильный следующий шаг, так как Spring это сейчас самое востребованное что есть в Java-мире. Кстати, были примеры трудоустройства еще в процессе курса!
Читать целиком
Григорий
Люллин
Курс понравился, много практик, примеров и домашних заданий. Преподавательский состав хороший. Сейчас применяю полученные знания на работе, так как удалось сменить проект на работе на более современный и с использованием Spring. Наверное, смог бы выучить все это и без курса (все таки документация и разного рода примеры есть в открытом доступе), но наличие дедлайнов и обратной связи помогает и мотивирует.
Читать целиком
Елена
Кущенко
Впечатления от курса строго положительные)
Грамотно составленная программа с широким охватом тем, отличные учебные материалы и конечно высокая квалификация преподавателей. Курс помог мне систематизировать знания, восполнить пробелы и разобраться в новых для меня технологиях и подходах. Кроме того, домашние задания и проектная работа дают возможность приобрести множество востребованных практических навыков.
Спасибо команде Otus =)
Читать целиком
Martin
Martin
Первое, о чем хочу сказать, это о преподавателе - Юрии Дворжецком.
После долгих 5 месяцев работы возникло огромное желание поработать под его руководством и в реальной жизни.
На протяжении всего курса была с его стороны поддержка в чате (чуть не 24/7), в критических ситуациях - удаленный дебаг.
Харизма преподавателя это то, что заряжало, позволяло не опускать руки, идти до конца. Именно за это Юрию от меня огромная благодарность!

Теперь о курсе. Шел на него с нормальным стажем С++ и уверенным знанием Java core. Из курса где-то 85% материала оказалось для меня новым.
Курс тяжелый. Но многое зависит от студента. Некоторые домашки можно сделать за 10 минут путем копипастинга кода из лекции, а можно подойти к ней, как к настоящей боевой задаче, и потратить пару недель.
Для успешного прохождения курса мне потребовалось брать отпуск. Перед принятием решения о поступлении на курс нужно быть готовым к серьезной работе.
Лекции пересматривать ни раз и ни два. Изучался дополнительный материал.
Программа грамотна составлена, полностью охватывает современные технологии разработки на Spring. Code review домашних заданий строг и беспощаден. В рамках курса была привита любовь в unit тестам.

Хочу так же отметить и общую доброжелательную атмосферу на курсе, отличная взаимопомощь в чате, как говорил Юрий: "У нас Community".

Буду рекомендовать ли я курс? Да.
Читать целиком
Руслан
Мустаев
Добротный, качественный курс с полным погружением.
Домашние задания заставляют проработать всё, а не оставаться в состоянии "вроде всё понял, но сделать ничего не могу".
Для меня курс был тяжелым, ничего не успевал, но в конце всё таки преодолев себя сдал все ДЗ и проект. Готовьте много свободного времени, но оно того стоит.
Преподаватель Юрий Дворжецкий - высший пилотаж как с технической стороны, так и со стороны soft skills.
Читать целиком
Алексей
Фальштынский
Отличный курс! Интересная, грамотно продуманная программа!
Лучший преподаватель - Юрий Дворжецкий! Интересный, харизматичный, нескучный. Присутствовать на лекциях было одним удовольствием!)
Наличие домашних заданий предоставляют возможность отработать полученные знания на практике!
Проектная работа - это вообще бомба! Мотивация просто зашкаливала. Наконец, реализовал идею почти 5-летней давности) Ну почти реализовал, остались еще доработки, но все же)
Спасибо всем за проделанную работу!
Читать целиком
Данаил
Кондов
Курс позволил познакомиться с современными технологиями разработки с использованием Spring Framework и, безусловно, стоит затраченных на него времени и усилий. Помимо лекций самым продуктивным моментом было живое общение с ведущими разработчиками, позволившее наименее болезненно преодолевать высокий порог вхождения в новые темы.
Читать целиком
Вадим
Чернов
Замечательный курс!

Умно построенная программа. Умные, внимательные преподаватели. Умные, интересные задания! Короче, всё умно, внимательно, интересно!!!!!
Мне курс очень помог.
1) Узнал много нового
2) То что знал — переоценил, взглянул на знакомые вещи с другой стороны.
3) Нащупал направление развития собственных проектов.
4,5,6....) Всё очень круто!

Огромное спасибо, ребята!!!!
Вы - МОЛОДЦЫ!!!!
Читать целиком
Александр
Шумилин
Халосый)
Читать целиком
Павел
Богданов
Курс очень здорово структурирован, отличный баланс теории/практики. Юрий замечательный преподаватель - все очень ясно и на примерах объясняет. Ведет абсолютно не скучно, часто приводит какие-то примеры из собственного опыта. Домашние задания начинаются с самых элементарных и заканчиваются уже действительно серьезными вещами (облака, микросервисы - это все), особенно понравилось задание по Integration, на последних этапах немного касались Docker/Kubernetes. В курсе раскрываются самые современные технологии и подходы такие как Reactive Streams и как они интегрированы в Spring и SQL/NoSQL БД и, собственно как Spring с ними взаимодействует, был краткий экскурс в современный фронтенд (достаточно поверхностно, но интересно), имеется также краткое введение в JPA/Hibernate. В общем, рекомендую, особенно если только освоили Java Core - это правильный следующий шаг, так как Spring это сейчас самое востребованное что есть в Java-мире. Кстати, были примеры трудоустройства еще в процессе курса!
Читать целиком
Григорий
Люллин
Курс понравился, много практик, примеров и домашних заданий. Преподавательский состав хороший. Сейчас применяю полученные знания на работе, так как удалось сменить проект на работе на более современный и с использованием Spring. Наверное, смог бы выучить все это и без курса (все таки документация и разного рода примеры есть в открытом доступе), но наличие дедлайнов и обратной связи помогает и мотивирует.
Читать целиком
Необходимые знания
  • Java Basics
  • Multithreading (позже)
  • Основы HTML/HTTP/JS
  • Основы SQL
  • Maven или Gradle
Процесс обучения
Обучение выстроено в формате вебинаров (онлайн). Слушателям предлагаются к выполнению домашние задания, которые позволят применить на практике полученные во время вебинаров знания. По каждому домашнему заданию преподаватель дает развернутый фидбек. Преподаватель находится в едином коммуникационном пространстве с группой на протяжении всего курса, т. е. в процессе обучения слушатель может задавать преподавателю уточняющие вопросы по материалам лекций и домашних заданий.
Необходимое время: 4 часа на занятия и 4-8 часов на домашнюю работу в неделю.
Программа обучения
Модуль 1
Введение
Модуль 2
Работа с базами данных
Модуль 3
Разработка Web-приложений
Модуль 4
"Около" и "Дзен"
Модуль 5
Проектная работа
Введение
В данном модуле будут рассматриваться понятия и функциональности, на которых базируются все проекты Spring: Inversion of Control (Spring Context), аспектное программирование (Spring AOP), Spring Expression Language (SpEL).

Слушатели смогут правильно и эффективно конфигурировать Spring-приложения различными средствами и способами, а также будет рассмотрена "чёрная магия" Spring Boot - автоконфигурации.
Тема 1: Введение в Spring Framework
ориентироваться в проектах Spring для дальнейшего изучения,
применять принцип IoC при написании классов и тестов,
создавать контекст Spring,
определять Spring Beans в контексте,
организовывать правильный DI
26 ноября, 20:00 — 21:30
Лектор: Юрий Дворжецкий
Домашние задания: 1
1 Программа по проведению тестирования студентов
Цель: Цель задания: создать приложение с помощью Spring IoC, чтобы познакомиться с основной функциональностью IoC, на которой строится весь Spring. Результат: простое приложение, сконфигурированное XML-контекстом.
Тема 2: Конфигурирование Spring-приложений
конфигурировать Spring-приложения в современном Java-based стиле (как сейчас и все пишут),
ориентироваться в многослойной и луковой (Onion) архитектурах,
пользоваться Spring Expression Language (SpEL),
задавать параметры приложения c помощью .properties файлов,
локализовывать приложения
3 декабря, 20:00 — 21:30
Лектор: Юрий Дворжецкий
Домашние задания: 1
1 Добавить файл настроек, Annotation- + Java-based конфигурация приложения
Цель: Цель: конфигурировать Spring-приложения современным способом, как это и делается в современном мире Результат: готовое современное приложение на чистом Spring
Тема 3: AOP, Spring AOP
использовать аспектно-ориентированное программирование (там где нужно),
видеть в коде ключевую функциональность Spring - Spring AOP,
реализовывать в приложениях crosscutting-функциональность с помощью Spring AOP
6 декабря, 20:00 — 21:30
Лектор: Юрий Дворжецкий
Тема 4: "Чёрная магия" Spring Boot
ориентироваться в возможностях Spring Boot для различных функциональностей и технологий,
максимально быстро создавать production-grade standalone Spring-приложения с помощью Spring Boot Starters,
писать автоконфигурации и использовать существующие,
писать property в YAML-формате
10 декабря, 20:00 — 21:30
Лектор: Юрий Дворжецкий
Домашние задания: 1
1 Перенести приложение для тестирования студентов на Spring Boot
Цель: Цель: использовать возможности Spring Boot, чтобы разрабатывать современные приложения, так, как их сейчас и разрабатывают. Результат: Production-ready приложение на Spring Boot
Тема 5: Продвинутая конфигурация Spring-приложений
использовать Best Practiсes для конфигурирования Spring-приложений,
максимально эффективно использовать анннотации конфигураций,
писать приложения с использованием Spring Shell
13 декабря, 20:00 — 21:30
Лектор: Александр Оруджев
Домашние задания: 1
1 Перевести приложение для проведения опросов на Spring Shell
Цель: Цель: После выполнения ДЗ вы сможете использовать Spring Shell, чтобы писать интерфейс приложения без Web. Результат: Приложение на Spring Shell
Тема 6: Разбор домашних заданий, QnA
писать код с учётом Best Practices,
не допускать частых ошибок,
получить ответы на вопросы
17 декабря, 20:00 — 21:30
Лектор: Александр Оруджев
Работа с базами данных
В данном разделе будет рассмотрены проекты Spring для работы как с реляционными базами данных, так и с NoSQL базами данных.

Spring JDBC, Spring ORM, Spring Data Repositories и, разумеется, работа с транзакциями.

Помимо проектов Spring, участники смогут разбираться в особенностях различных баз данных, а также использовать специальные embedded-базы даных.
Тема 1: DAO на Spring JDBC
эффективно использовать JDBC вместе со Spring JDBC для разработки приложений с мощью чистого SQL,
правильно применять паттерн DAO для подключения к БД,
пользоваться embedded БД для написания тестов и при разработке простых приложений
20 декабря, 20:00 — 21:30
Лектор: Александр Оруджев
Домашние задания: 1
1 Создать приложение хранящее информацию о книгах в библиотеке
Использовать Spring JDBC и реляционную базу.

Опционально использовать настоящую реляционную БД, но можно использовать H2.

Предусмотреть таблицы авторов, книг и жанров.

Интерфейс на Spring Shell

Покрыть тестами, насколько это возможно.

НЕ делать AbstractDao.
НЕ делать наследования в тестах
Тема 2: Основы ORM, JPA, Hibernate как провайдер JPA
применять JPA для описания маппинга классов-entities на таблицы реляционной БД,
использовать Hibernate в качестве JPA Vendor
24 декабря, 20:00 — 21:30
Лектор: Александр Оруджев
Тема 3: JPQL, Spring ORM, DAO на основе Spring ORM + JPA
писать ORM DAO с помощью Spring ORM + JPA + Hibernate (в качестве JPA Vendor-a) в Spring приложениях;
использовать JPQL (аналог HQL) для построения SQL-подобных запросов.
27 декабря, 20:00 — 21:30
Лектор: Александр Оруджев
Домашние задания: 1
1 Переписать приложение для хранения книг на ORM
Использовать JPA, Hibernate только в качестве JPA-провайдера.

Добавить комментарии к книгам, и высокоуровневые сервисы, оставляющие комментарии к книгам.

Покрыть DAO тестами используя H2 базу данных и соответствующий H2 Hibernate-диалект
Тема 4: Транзакции, Spring Tx
понимать и применять особенности транзакции в реляционных БД для правильной разработки слоя DAO,
использовать декларативное и императивное управление транзакциями в Spring-приложениях с помощью Spring Tx
10 января, 20:00 — 21:30
Лектор: Виталий Куценко
Тема 5: "Белая магия" Spring Data: Spring Data JPA
разбираться в проектах Spring Data для написания репозиториев в максимально простом виде;
научатся использовать мощную "белую магию" Spring Data JPA для создания репозиториев для JPA сущностей
14 января, 20:00 — 21:30
Лектор: Дмитрий Коган
Домашние задания: 1
1 Билиотеку на Spring Data JPA
Реализовать весь функционал работы с БД в приложении книг с использованием spring-data-jpa репозиториев.
Тема 6: SQL и NoSQL базы данных
использовать особенности нереляционных (NoSQL) БД,
выбирать NoSQL БД для решения задач
17 января, 20:00 — 21:30
Лектор: Дмитрий Коган
Тема 7: Spring Data для подключения к нереляционным БД
После данного занятия слушатели смогу разрабатывать DAO, хранящие данные в нереляционных БД с помощью других Spring Data проектов.
21 января, 20:00 — 21:30
Лектор: Дмитрий Коган
Домашние задания: 1
1 Использовать MogoDB и spring-data для хранения информации о книгах
Тесты можно реализовать с помощью spring-boot-strter-embedded-mongodb
Тема 8: Разбор домашних заданий, QnA
писать код с учётом Best Practices,
не допускать частых ошибок,
получить ответы на вопросы
24 января, 20:00 — 21:30
Лектор: Александр Оруджев
Разработка Web-приложений
В данном модуле будут рассматриваться возможности Spring для разработки Web-приложений: Spring MVC и современный Reactive-ориентированный Spring WebFlux.

Разумеется, будут рассмотрены популярные технологии View и разработка современных SPA-приложений.

И, конечно, различные "плюшки" Spring Boot, максимально ускоряющие разработку Web-приложений.
Тема 1: Введение в Spring MVC, Spring MVC на Spring Boot
Слушатели смогут ориентироваться в архитектуре MVC и Spring MVC, создавать простые классические веб-приложения на основе Spring MVC и Spring Boot.
28 января, 20:00 — 21:30
Тема 2: Spring MVC View
По окончании данного занятия слушатели смогут разрабатывать View в классических Web-приложениях, как с использованием JSP, так и с помощью современных технологий: Thymeleaf, Freemarker, и т.д.
31 января, 20:00 — 21:30
Домашние задания: 1
1 CRUD приложение с Web UI и хранением данных в БД
Создайте приложение с хранением сущностей в БД (можно взять DAOs из прошлых занятий)

Использовать классический View, предусмотреть страницу отображения всех сущностей и создания/редактирования.

View на Thymeleaf, classic Controllers.
Тема 3: Современные приложения на Spring MVC
Слушатели смогут создавать современные приложения (основанные на AJAX архитектуре и SPA-приложения).
Ну и, конечно, после данного занятия слушатели смогут создавать контроллеры всех сортов и мастей для решения большого спектра задач в веб-приложениях.

А также слушатели познакомятся с высокоуровневым WebFlow для описания Web-приложений.
4 февраля, 20:00 — 21:30
Домашние задания: 1
1 Переписать приложение с использованием AJAX и REST-контроллеров
Переписать приложение с классических View на AJAX архитектуру и REST-контроллеры.

Опционально: Сделать SPA приложение на любом из Web-фреймоврков
Тема 4: Реактивное программирование
В данном модуле слушатели узнают, что такое Reactive программирование и познакомятся с библиотекой RxJava.
7 февраля, 20:00 — 21:30
Тема 5: Reactive Spring Frameworks
По окончанию данного модуля слушатели узнают про реактивные фреймоврки в стеке Spring и научаться использовать Reactive-версию Spring Data репозиториев.
11 февраля, 20:00 — 21:30
Тема 6: Spring WebFlux
После данного занятия слушатели смогу создавать современные Reactive Web-приложения с помощью Spring WebFlux.
14 февраля, 20:00 — 21:30
Домашние задания: 1
1 Использовать WebFlux
Вместо классического потока и embedded Web-сервера использовать WebFlux.
"Около" и "Дзен"
В данном модуле рассматриваются продвинутые проекты Spring решающие специфичные задачи, связанные с авторизацией и аутентификацией, размещения сервисов в облаках и работой с БД, а также облегчающие создание больших монолитов и систем на микросервисной архитектуре.
Тема 1: Spring Security: Архитектура
По окончанию занятия слушатели разберутся что такое аутентификация и авторизация, разберутся в архитектуре Spring Security, и смогут настроить HTTP Basic Auth аутнетификацию.
18 февраля, 20:00 — 21:30
Тема 2: Spring Security: Механизмы аутентификации
По окончанию занятия слушатели смогут внедрять в приложение любой механизм аутентификации.
21 февраля, 20:00 — 21:30
Домашние задания: 1
1 В CRUD Web-приложение добавить механизм аутентификации
В существующее CRUD-приложение добавить мехнизм Form-based аутентификации.

UsersServices реализовать самостоятельно.

Внимание! Задание выполняется на основе нереактивного приложения Sping MVC!
Тема 3: Spring Security: Авторизация
После занятия пользователи смогу внедрять в приложение различные механизмы авторизации - на основе URL, методов сервисов.
25 февраля, 20:00 — 21:30
Тема 4: Spring Security: ACL
После прохождения данного модуля слушатели научатся внедрять в приложение безопасность на основе доменных сущностей: ACLs
28 февраля, 20:00 — 21:30
Домашние задания: 1
1 Ввести авторизацию на основе URL и/или доменных сущностей
Настроить в приложении авторизацию на уровне URL и/или доменных сущностей.

Внимание! Задание выполняется на основе нереактивного приложения Sping MVC!
Тема 5: Spring Batch
Слушатели смогут использовать всю мощь Spring Batch, узнают когда он необходим проекту и почему он нужен не только для больших проектов.
3 марта, 20:00 — 21:30
Домашние задания: 1
1 Разработать процедуру миграции данных из реляционного хранилища в NoSQL или наоборот
Используя Spring Batch.

Опционально: Сделать restart с помощью Spring Shell.
Тема 6: Монолиты vs. Microservices Round 1, Messaging, Enterprise Integration Patterns (EIP)
По окончании данного модуля слушатели узнают два похода к разработке Enterprise-приложений - монолиты и микросервисы.
Узнают, какие проблемы возникают при создании монолитов, что такое Messaging и Enterprise Integration Patterns (EIP) и где здесь Spring Integration.
6 марта, 20:00 — 21:30
Тема 7: Spring Integration: Messages и Channels
Слушатели узнают различные семантики каналов, все сорта различных каналов и где они используются.
Также слушатели узнают о сообщениях, которые передаются в каналах и встроенный DSL для настройки связей в Spring Integration.
Также слушатели узнают про базовые Endpoints и Flow Components.
17 марта, 20:00 — 21:30
Домашние задания: 1
1 Реализовать обработку доменной сущности через каналы Spring Integration
Выберите подходящий канал для каждого соответствующего запроса

Опционально: протестируйте приложение под нагрузкой.
Тема 8: Spring Integration: Endpoints и Flow Components
Слушатели также узнают про другие Endpoints и Flow Components и смогут разрабатывать сложные Enterprise-приложения c почти любой интеграцией.
20 марта, 20:00 — 21:30
Тема 9: Монолиты vs. Microservices (Round 2), Spring Boot Actuator - must have в микросервисах
На данном занятии слушатели будут рассматривать возможности Spring Boot Actuator для создания production-grade приложений и микросервисов, а потом будут долго отходить от таких возможностей и изобилия.

Также в данном разделе будет рассмотрен HATEOAS подход для разработки REST-сервисов.
24 марта, 20:00 — 21:30
Домашние задания: 1
1 Использовать метрики, healthchecks и logfile к приложению
И любую другую функциональность на выбор.

Опционально: переписать приложение на HATEOAS принципах.
Тема 10: REST-клиенты, SOAP, Spring WebServices и клиенты к ним
Слушатели научаться писать REST-клиентов к микросервисам.
Также, после занятия слушатели овладеют одним из самых простых способов создания SOAP-сервисов и клиентов к ним Spring WebServices, ну и, конечно будет рассмотрены SOA и SOAP.
27 марта, 20:00 — 21:30
Тема 11: Docker, оркестрация, облака, облачные хостинги
По окончании данного занятия слушатели смогут разбираться в вышеперечисленных словах, а также разбираться в современных принципах построения облачных систем.
31 марта, 20:00 — 21:30
Домашние задания: 1
1 Обернуть приложение в docker-контейнер
Обернуть приложение в docker-контейнер, БД тоже. Настроить связь между ними.

Опционально: сделать это в локальном кубе.
Тема 12: Spring Cloud: Config Server, Service Registry, интеграция в облака
Слушатели научаться пользоваться возможностями Spring для интеграции с облаками: Config Server, Service Registry, Docker/Kubernates/AWS/Azure best-practices.
3 апреля, 20:00 — 21:30
Тема 13: Spring Cloud Data Flow, Hystrix Circuit Breaker
Слушатели смогут узнать как строятся огромные системы на Spring с использованием Spring Cloud Data Flow.

Также будет рассмотрен популярный фреймворк для использования внешних систем и ресурсов - Hystrix (+Hystrix Javanica) и его интеграция со Spring.
7 апреля, 20:00 — 21:30
Домашние задания: 1
1 Обернуть внешние вызовы в Hystrix
Обернуть все внешние вызовы в Hystrix, Hystrix Javanica.

Опционально: Поднять Turbine Dashboard для мониторинга.
Тема 14: Обзор дополнительных технологий Spring, выбор архитектуры и технологий
По окончанию занятия слушатели познакомятся с другими проектами Spring для создания приложений.

Смогут правильно выбирать архитектуру и стек технологий для проекта.
10 апреля, 20:00 — 21:30
Проектная работа
Заключительный месяц курса посвящен проектной работе. Свой проект - это то, что интересно писать студенту. То, что можно создать на основе знаний, полученных на курсе.
При этом не обязательно закончить его за месяц. В процессе написания по проекту можно получить консультации преподавателей.

Проект должен стать примером кода, который можно показывать потенциальным работодателям.

Проект должен быть сделан на основе Spring Boot, включать работу с DB с ипользованием Spring Data репозиториев и/или Spring JDBC.
Проект должен иметь UI построенный на современных принципах разработки Web-приложений (AJAX и/или SPA).
Приложение должно содержать механизмы аутентификации и авторизации с использованием Spring Security
Асинхронные части могут быть реализованы с помощью Spring Integration.
Пектные обработки, утилиты поддержки должны быть реализованы с помощью Spring Batch + Spring Shell.
Проект должен быть cloud-ready.

Примеры тем:
- Онлайн-библиотека
- Блог с админкой/регистрацией пользователей
Предлагаемые темы выпускного проекта:
- Онлайн-библиотека
- Блог с админкой/регистрацией пользователей
- Всё что угодно, к чему "душа лежит"
Тема 1: Вводное занятие по проектной работе
Выбрать и обсудить предполагаемую тему проектной работы
14 апреля, 20:00 — 21:30
Домашние задания: 1
1 Проектная работа
Проект должен быть сделан на основе Spring Boot, включать работу с DB с ипользованием Spring Data репозиториев и/или Spring JDBC.
Проект должен иметь UI построенный на современных принципах разработки Web-приложений (AJAX и/или SPA).
Приложение должно содержать механизмы аутентификации и авторизации с использованием Spring Security
Асинхронные части могут быть реализованы с помощью Spring Integration.
Пектные обработки, утилиты поддержки должны быть реализованы с помощью Spring Batch + Spring Shell.
Проект должен быть cloud-ready.
Тема 2: Консультация по проекту + пробная защита проекта
Консультирование слушателей по вопросам проектной работы.
28 апреля, 20:00 — 21:30
Тема 3: Защита проектных работ №1
На данном занятии слушатели будут защищать собственные проекты.
12 мая, 20:00 — 21:30
Тема 4: Защита проектных работ №2
На этом занятии слушатели могут защитить свои проектные работы.
15 мая, 20:00 — 21:30
Выпускной проект
Проектная работа по Spring Framework распределена по всему сроку обучения, хотя может быть сделана и в последний месяц. Она создается на основе знаний, полученных на курсе. Готовый проект станет примером кода, который можно показывать потенциальным работодателям. В процессе написания вы можете консультироваться с преподавателями.

Технические требования к выпускному проекту по Spring Framework

  • проект должен быть сделан на основе Spring Boot, а также включать работу с DB с использованием Spring Data репозиториев и/или Spring JDBC;

  • проект должен иметь UI, построенный на современных принципах разработки Web-приложений (AJAX и/или SPA);

  • создаваемое в проектной работе приложение должно содержать механизмы аутентификации и авторизации с использованием Spring Security;

  • асинхронные части рекомендуется реализовывать с помощью Spring Integration;

  • пакетные обработки и утилиты поддержки должны быть реализованы с помощью Spring Batch+Spring Shell;

  • проект должен быть CloudReady.


Примеры тем проекта

  • онлайн-библиотека;

  • блог с админкой/регистрацией пользователей.

Прошедшие открытые вебинары по курсу
Открытый вебинар — это настоящее занятие в режиме он-лайн с преподавателем курса, которое позволяет посмотреть, как проходит процесс обучения. В ходе занятия слушатели имеют возможность задать вопросы и получить знания по реальным практическим кейсам.
Веб-приложение на Spring MVC и Spring Security
Юрий Дворжецкий
День открытых дверей
19 ноября в 20:00
Для доступа к прошедшим мероприятиям необходимо пройти входное тестирование
Возможность пройти вступительное тестирование повторно появится только через 2 недели
Результаты тестирования будут отправлены вам на e-mail, указанный при регистрации.
Тест рассчитан на 30 минут, после начала тестирования отложить тестирование не получится!
Пройти вступительное тестирование
После обучения вы

  • получите материалы по всем пройденным занятиям (видеозаписи вебинаров, презентации, примеры кода);

  • приобретете практический опыт работы с актуальными фреймворками и технологиями Spring;

  • получите сертификат об окончании курса;

  • сможете создавать как самостоятельные проекты, так и в большие коммерческие приложения в команде;

  • получите приглашение пройти собеседование в компаниях-партнерах (в случае успешного обучения на курсе).

Дата выдачи сертификата: 31 мая 2020 года
Ваш сертификат

онлайн-образование

Сертификат №0001

Константин Константинопольский

Успешно закончил курс «Разработчик на Spring Framework»
Выполнено практических заданий: 16 из 16

Общество с ограниченной ответственностью “Отус Онлайн-Образование”

Город:
Москва

Генеральный директор ООО “Отус Онлайн-Образование”
Виталий Чибриков

Лицензия на осуществление образовательной деятельности
№ 039825 от 28 декабря 2018г.

онлайн-образование

Сертификат №0001

Константин Константинопольский

Успешно закончил курс «Разработчик на Spring Framework»
Выполнено практических заданий: 16 из 16

Общество с ограниченной ответственностью “Отус Онлайн-Образование”

Город:
Москва

Генеральный директор ООО “Отус Онлайн-Образование”
Виталий Чибриков

Лицензия на осуществление образовательной деятельности
№ 039825 от 28 декабря 2018г.
Общая стоимость
60 000 ₽ 42 000 ₽
В месяц: 15 000 ₽
В кредит: ₽ в месяц
Продолжительность
5 месяцев
Начало занятий
26 ноября