Groovy Developer

Best Practices по языку программирования Groovy и его экосистеме

В июле

4 месяца

Онлайн

Вт/Пт 20:00 Мск

Для кого этот курс?

Курс предназначен прежде всего для Java-разработчиков с опытом работы от 1 года, но также обеспечивает развитие в области бэкенд-разработки/тестирования на Groovy для следующих специалистов:

  • DevOps инженеров, которые хотят научиться более гибко настраивать CI/CD пайплайны в Jenkins/Gitlab и изучить систему сборки проектов Gradle;
  • QA-инженеров с опытом написания автотестов и скриптов на одном из языков разработки (Java, Python, JavaScript), желающие изучить фреймворки написания модульных и автотестов с Groovy, а также гибкую настройку тестовых планов в JMeter с использованием jsr223 (Groovy).
  • Программистов с опытом работы на других языках от 2-х лет, знакомых с синтаксисом веб-приложений.

Где, в каких проектах требуются такие специалисты?

  • Автоматизация CI/CD пайплайнов
  • Продвинутое нагрузочное тестирование с JMeter
  • Написание автотестов/интеграционных тестов для Java/Groovy-проектов
  • Песочницы для запуска пользовательских скриптов
  • Проекты с гибкой конфигурацией

В рамках курса вы освоите:

  • Groovy-конфигурации для Spring
  • Spoke и Geb фреймворки для тестирования
  • Groovy-фреймворки для бэкенд-разработки: Grails, Micronaut
  • Jenkins и настройки пайплайнов
  • JMeter и Groovy

Что даст вам этот курс?

  • Язык Groovy: познакомитесь с синтаксисом языка Groovy; научитесь применять Groovy-скрипты; использовать статическую и динамическую типизацию кода; использовать средства языка для работы с БД, текстовыми форматами данных json/xml/yaml, работать с http-запросами.
  • Системы сборки: научитесь конфигурировать сборку в Gradle; создавать многомодульные проекты в Gradle; настраивать и кастомизировать шаги сборки в Gradle; писать свои плагины для Gradle; конфигурировать пайплайны сборки в Jenkins, писать свою функциональность для пайлплайнов на Groovy.
  • Работа с фреймворками: узнаете, как конфигурировать Spring-приложения с помощью Groovy; применять Groovy-фреймворки: Grails, Micronaut, GORM для разработки бэкенд-приложений.
  • Создание DSL: научитесь проектировать DSL; использовать AST-трансформацию и GDSL.
  • Тестирование приложений: научитесь создавать тест-кейсы для модульного и интеграционного тестирования с помощью фреймворка Spock; реализовывать автотесты с фреймворком Geb; создавать и проектировать планы нагрузочного тестирования с помощью JMeter, расширять функциональность JMeter с помощью jsr223-скриптов.

Дополнительные инструменты


В программе будут рассмотрены инструменты и фреймворки, которые используют свой DSL для декларативных конфигураций, либо как легковесный инструмент для написания кода. А также основные Groovy-фреймворки, работа с Gradle и Jenkins.

Процесс обучения

Обучение проходит онлайн: вебинары, общение с преподавателями и вашей группой в телеграме курса, сдача домашних работ и получение обратной связи от преподавателя. Вебинары проводятся 2 раза в неделю по 2 академ. часа и сохраняются в записи в личном кабинете. Вы можете посмотреть их в любое удобное для вас время. В ходе обучения вы будете выполнять домашние задания. Каждое из них посвящено одному из компонентов вашей проектной работы. После выполнения всех домашних заданий вы получите готовый итоговый проект.

Интеграция данных


Изучите встроенные инструменты в Groovy для работы с данными (json/xml/db/rest)

Работа с бэкендом


Освоите популярные бэкенд-фреймворки из Groovy-экосистемы

Техническое интервью


Подготовитесь к техническому собеседованию на позицию Groovy-разработчика

Трудоустройство

Многие студенты еще во время прохождения первой части программы находят или меняют работу, а к концу обучения могут претендовать на повышение в должности. 

  • Получите помощь с оформлением резюме, портфолио и сопроводительного письма
  • Разместите свое резюме в базе OTUS и сможете получать приглашения на собеседования от партнеров

Groovy Developer

Перспективы направления
Средний уровень зарплат в Москве:
110 000Junior+ специалист
160 000Middle+ специалист
260 000Senior специалист
250
актуальных вакансий

Работодатель курса

Формат обучения

Интерактивные вебинары


2 занятия по 2 ак.ч. в неделю. Доступ к записям и материалам остается у вас навсегда

Практика

 

Домашние задания + проектная работа, которая усилит ваше портфолио

Активное комьюнити


Общайтесь с преподавателями голосом на вебинарах и в Telegram-чате

Программа

Синтаксис и встроенные функции языка

- синтаксис языка и особенности; - встроенные инструменты для работы с данными (db, xml/json/yaml, rest); - паттерны проектирования.

Тема 1: Groovy - JVM и Java

Тема 2: Языковые конструкции. Способы запуска. Операторы

Тема 3: Языковые конструкции. Строки и regex

Тема 4: Языковые конструкции. Классы, интерфейсы, трейты, объекты, конструкторы, методы

Тема 5: Функциональное программирование

Тема 6: Коллекции

Тема 7: XML/JSON/YAML parsing

Тема 8: Консультация + смотрим примеры

Продвинутые функции языка. Расширения языка (DSL)

- мета-классы и методы-расширения; - DSL и AST-трансформация; - GDSL.

Тема 1: Метапрограммирование

Тема 2: Паттерн декоратор и расширения

Тема 3: Делегирование и введение в DSL

Тема 4: AST-трансформации

Тема 5: GDSL Практика построения DSL + смотрим примеры

Системы сборки проекта

- настройка системы сборки Gradle; - настройка CI/CD пайплайнов в Jenkins/Gitlab.

Тема 1: Обзор систем сборки

Тема 2: Gradle DSL (часть 1): обзор

Тема 3: Gradle DSL (часть 2): написание плагина

Тема 4: CI/CD. Jenkins (часть 1): Pipelines и Jenkins DSL

Тема 5: CI/CD. Jenkins (часть 2): Plugins API и интеграции

Тема 6: Практика по сборке проектов

Разработка бэкенда

построение веб-приложений с использованием фреймворка Grails; построение веб-приложений с использованием фреймворка Micronaut; построение веб-приложений с использованием фреймворка Spring; использование OpenAPI.

Тема 1: Веб-уровень: грувлеты и шаблоны, Rest

Тема 2: Веб-фреймворки: Grails, Micronaut

Тема 3: Groovy Config + Spring IoC

Тема 4: Работа с БД. Часть 1: Sql

Тема 5: Работа с БД. Часть 2: ORM: GORM

Тема 6: OpenAPI Groovy Generator

Тема 7: Практика по работе с фреймворками

Тестирование

- модульное и интеграционное тестирование; - фреймворки Spoke и Geb, мокирование в Groovy; - нагрузочное тестирование с JMeter.

Тема 1: Модульные тесты

Тема 2: Spoke Framework + автотесты

Тема 3: Нагрузочное тестирование

Тема 4: Практика по тестированию

Проектный модуль

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

Тема 1: Выбор темы и организация проектной работы

Тема 2: Консультация по проектам и домашним заданиям

Тема 3: Technical Interview

Тема 4: Защита проектных работ

Также вы можете получить полную программу, чтобы убедиться, что обучение вам подходит

Проектная работа


Заключительный месяц курса посвящен проектной работе. Его разработка нужна для окончательного закрепления знаний, которые были получены в рамках пройденных занятий. При успешном выполнении он станет образцом кода, который разработчик сможет показывать будущим работодателям. В любом случае, проект — это хороший задел на будущее и возможность получить дополнительный опыт для любого, кто хочет стать более профессиональным разработчиком. Тему проекта вы можете предложить свою и согласовать ее у руководителя курса, либо выбрать тему из предложенных.

Преподаватель

Андрей Поляков

Unlimint

Старший разработчик

3 года в Otus
289 занятий
2381 студент

В отрасли бэкенд-разработки на Java более 6 лет. Занимался fullstack-разработкой приложений, разработкой высоконагруженных compute-grid систем, а также микросервисов и etl-пайплайнов. Сейчас в роли старшего разработчика работаю над сервисами платежных систем в Unlimint. Есть опыт работы с сервисами Hadoop (HDFS, HBase), оркестраторами (Airflow, Spring Cloud Data Flow), MPP-базами (Cassandra, Greenplum, Clickhouse). Интересы: BigData, Blockchain, NFT Образование: Master Degree in Computer Science and IT, ЮУрГУ, факультет ВШЭКН.

Преподает на курсах

  • Highload Architect
  • Cloud Solution Architecture
  • Архитектура и шаблоны проектирования
  • Microservice Architecture
  • Data Warehouse Analyst
  • Data Engineer
  • Java Developer. Basic

Эксперты-практики делятся опытом, разбирают кейсы студентов и дают развернутый фидбэк на домашние задания

Прошедшие
мероприятия

Андрей Поляков
Открытый вебинар
Введение в функциональное программирование в Groovy
Андрей Поляков
Открытый вебинар
Jmeter Groovy Dsl
Оставьте заявку, чтобы получить доступ ко всем записям прошедших мероприятий. Записи всех мероприятий появятся в этом блоке

Корпоративное обучение для ваших сотрудников

Отус помогает развивать высокотехнологичные Команды. Почему нам удаётся это делать успешно:
  • Курсы OTUS верифицированы крупными игроками ИТ-рынка и предлагают инструменты и практики, актуальные на данный момент
  • Студенты работают в группах, могут получить консультации не только преподавателей, но и профессионального сообщества
  • OTUS проверяет знания студентов перед стартом обучения и после его завершения
  • Простой и удобный личный кабинет компании, в котором можно видеть статистику по обучению сотрудников
  • Сертификат нашего выпускника за 5 лет стал гарантом качества знаний в обществе
  • OTUS создал в IT более 120 курсов по 7 направлениям, линейка которых расширяется по 40-50 курсов в год

Отзывы

Андрей Сосновец

29.05.2023
Большое спасибо за предоставленный материал. В целом впечатления положительные, однако темы раскрываются довольно поверхностно, но это не проблема менторов и преподавателей, просто в такие сроки как 4 месяца, материал такого объема не изложить, отсюда и вытекает то, что курс рассчитан явно не на новичков. Очень много требуется разбирать самостоятельно, вследствие чего, выполнение домашних занятий может занять чуть больше времени, чем хотелось-бы. Курс - отличная возможность познакомится с другими практиками и стеком, если ты уже занимаешься разработкой. Курс чуть-ли не единственный по groovy, поэтому не жалею потраченного времени. Спасибо.

Ярослав Эрлих

14.05.2023
Курс полезный, узнал много про Groovy, о его фишках и особенностях. Хорошо разобраны фреймворки разработки и тестирования. Доходчиво, понятно. После курса очень заинтересовал Gradle и DSL. Однако стоит больше времени уделить в обучении: 1. AST-трансформациям, затронули поверхностно и толком практики с этим не было 2. Gradle плагинам, очень интересная и глубокая тема, а плагин кодогенерации не смог понять. Надо бы по нему отдельное занятие и задание.

Сертификат о прохождении курса

OTUS осуществляет лицензированную образовательную деятельность. В конце обучения вы получите сертификат OTUS о прохождении курса

После обучения вы:


  • сможете разрабатывать бэкенд веб-приложений и добавлять гибкую конфигурацию в приложение, а также писать гибкие модульные и интеграционные тесты, настраивать CI/CD пайплайны и кастомизировать их и расширять тестовые планы в JMeter
  • получите материалы по всем пройденным занятиям (видеозаписи вебинаров, выполненные домашние задания, итоговый проект)
  • получите сертификат о прохождении курса

Частые вопросы

Что, если в середине курса я не смогу продолжать обучение?
У вас есть право одного бесплатного трансфера в другую группу.
Обязательно ли защищать итоговый проект?
Для получения сертификата OTUS сдавать проект необязательно (в сертификате будет отражено кол-во выполненныз домашних работ). Для получения Удостоверения о повышении квалификации необходимо выполнить итоговый проект. Кроме того, проект необязательно защищать перед аудиторией, а можно сдать в чате с преподавателем.
Я могу вернуть деньги?
Да, вы можете сделать возврат средств пропорционально оставшимся месяцам обучения.