Практический Advanced-курс
Старт: 30 ноября Online Вебинары с автором Любой ООП-язык
Авторский курс Сергея Сучка, Tech Lead

MasteringDomain-Driven
Design

DDD, CQRS и Event Sourcing на практике

Строим по принципам DDD enterprise-системы, которые легко поддерживать и развивать. Один сквозной проект – от первого агрегата до саг, Kafka и готовности к продакшену.

  • 5 лекций по теории + 12 лабораторных на одном проекте для портфолио
  • Проверка заданий и персональное код-ревью от менторов уровня Lead+
  • Production-стек: MongoDB, PostgreSQL, Kafka, Docker, GitLab CI
18 видеоуроков · 5 лекций, 12 лабораторных и итоговая лекция
6 вебинаров с Сергеем Сучком
3 мес обучения с проверкой заданий
6 мес доступа к лекциям и заданиям
Узнаёшь себя?

Код растёт вместе с продуктом. Контроль над ним – нет

«каждое изменение что-то ломает»

Код превратился в запутанный клубок

Новая фича затрагивает три модуля, тесты падают в неожиданных местах, а рефакторинг постоянно откладывают «на потом».

«а где же эта логика?»

Бизнес-правила разбросаны по всему проекту

Часть в контроллерах, часть в сервисах, часть в SQL. Чтобы изменить одно правило, нужно найти все пять мест, где оно живёт.

«а на практике применяли?»

О DDD, CQRS и ES спрашивают на собеседованиях

Термины знакомы по статьям и докладам. Но без собственного проекта убедительно объяснить агрегат, проекцию или сагу не получится.

Главная идея курса

Один проект. Двенадцать лабораторных

Вместо разрозненных примеров ты шаг за шагом строишь бэкенд приложения для семейного бюджета. Каждая лабораторная добавляет функцию, которая работает сквозным образом – от API до базы данных, и ты видишь, как архитектура развивается вместе с продуктом.

  1. LAB 01 Скелет системы модульный монолит · CI
  2. LAB 02 Счета первый агрегат · Event Store
  3. LAB 03 Модель чтения и REST API проекции · порты чтения
  4. LAB 04 Бюджеты новый модуль · лимиты
  5. LAB 05 Транзакции несколько агрегатов · компенсация
  6. LAB 06 Категории границы агрегата · миграция
  7. LAB 07 Перенос остатка закрытие периода
  8. LAB 08 Общие кошельки членство · авторизация
  9. LAB 09 Мультивалютность Anti-Corruption Layer
  10. LAB 10 Отчёты Kafka · Outbox · идемпотентность
  11. LAB 11 Разделённые транзакции саги · компенсация
  12. LAB 12 Итоговый проект фитнес-функции · deploy-ready
MongoDB · Event Store PostgreSQL · проекции Apache Kafka · шина событий Docker Compose · окружение GitLab CI · приватный репозиторий C4 · sequence · state
Сергей Сучок
Без «магии» фреймворков Ключевые паттерны ты реализуешь сам – чтобы понимать, как всё работает внутри

Мы сознательно не используем готовые CQRS/ES-фреймворки. Поэтому знания не привязаны к Spring, .NET или NestJS и переносятся на любой стек и в любую компанию.

Для кого курс

Для бэкенд-разработчиков, готовых к следующему шагу

Middle · Senior backend

Работаешь над продуктом со сложной бизнес-логикой

Финтех, e-commerce, логистика, страхование, SaaS. Ты научишься моделировать домен, проводить границы модулей и держать бизнес-правила в одном месте.

Результат : код, который говорит на языке бизнеса и не ломается от новых требований.
Tech Lead · будущий Architect

Хочешь перейти на уровень архитектурных решений

Курс даёт системное архитектурное мышление и учит взвешивать компромиссы: когда DDD, CQRS и ES приносят пользу, а когда становятся лишним усложнением.

Результат: уверенность на собеседованиях по system design и готовность к роли Tech Lead / Architect.
Язык на твой выбор Любой ООП-язык для бэкенда
Рекомендуемый опыт 2+ года backend · ООП · REST · SQL · Git · Docker
Кому курс не подойдёт
  • Новичкам без коммерческого опыта бэкенда
  • Frontend- и mobile-разработчикам без бэкенда
  • Тем, кто ищет курс по конкретному фреймворку

Хочешь сначала подтянуть базу? GRASP, SOLID и GoF, на которые опираются DDD, CQRS и Event Sourcing, даёт курс «Фундамент Архитектуры».

Программа курса

Теория, практика и углублённые темы

Тест для самопроверки после каждого урока. Каждая лабораторная имеет чёткие критерии приёмки и автоматическую проверку сборки и тестов в CI.

Часть I I Основы DDD, CQRS и Event Sourcing

Фундамент, на котором стоит весь проект.

  1. 01
    Введение и обзор домена курсаПочему сложным бизнес-доменам нужен DDD. Единый язык (Ubiquitous Language). Домен Family Budgeting App. Четыре тактических строительных блока; слоистая архитектура против DDD.
  2. 02
    Основы Domain-Driven DesignСтратегический и тактический DDD. Ограниченные контексты и карта контекстов: Shared Kernel, Customer–Supplier, Anti-Corruption Layer. Поддомены Core, Supporting, Generic. Сущности, объекты-значения, агрегаты, репозитории, доменные события.
  3. 03
    Слоистая архитектура и границы модулейДоменный слой, слой приложения, слой представления. Application Services как координаторы сценариев. Организация кода по ограниченным контекстам. Anti-Corruption Layer в деталях.
  4. 04
    CQRSРазделение команд и запросов, обработчики команд. Независимое масштабирование и оптимизированные модели. Отложенная согласованность как осознанный компромисс. Когда CQRS уместен, а когда – лишняя сложность.
  5. 05
    Принципы Event SourcingAppend-only хранилище событий. Восстановление состояния агрегата из потока событий. Журнал аудита, replay, снимки состояния. Идемпотентность потребителей. CQRS + ES: команды → события → проекции. Когда Event Sourcing действительно оправдан.
Часть II II Строим Family Budgeting App

12 лабораторных. Каждая добавляет в систему новую функцию, работающую сквозным образом.

  1. 01
    Настройка проекта и CIМодульный монолит, Docker Compose, health-check, GitLab CI.
  2. 02
    Домен AccountПервый агрегат на CQRS + ES, хранилище событий.
  3. 03
    Модель чтения и REST APIПроекции в PostgreSQL, первый полный цикл команда → событие → проекция → запрос.
  4. 04
    Домен BudgetЛимиты расходов. Превышение лимита фиксируется событием, а не блокирует расход.
  5. 05
    Запись транзакцийКоординация нескольких агрегатов, компенсирующее событие при частичном отказе.
  6. 06
    Категории и бюджеты по категориямНовые границы агрегата, рефакторинг модели, миграция проекций.
  7. 07
    Перенос остатка бюджетаЗакрытие периода и границы бюджетных периодов.
  8. 08
    Общие кошелькиЧленство, авторизация операций, доступ только к собственным счетам.
  9. 09
    МультивалютностьИнтеграция внешнего сервиса курсов через Anti-Corruption Layer.
  10. 10
    ОтчётыПроекции из нескольких источников, Kafka, паттерн Outbox, идемпотентные проекции.
  11. 11
    Разделённые транзакции и сагиОдин расход на несколько категорий, паттерн «Сага», взаимодействие модулей через входные порты.
  12. 12
    Итоговый проектСквозной тест сценария, фитнес-функции, деплой из чистого репозитория.
Часть III III Углублённые темы и итоги

То, с чем сталкиваются системы на Event Sourcing в продакшене.

  1. 01
    Версионирование событийОбратная совместимость, апкастинг, несколько версий событий.
  2. 02
    Углублённый CQRSШина команд и запросов, пайплайн обработчиков, паттерн Mediator.
  3. 03
    Масштабирование и наблюдаемостьРост истории событий, архивирование, разделы Kafka, correlation ID, задержка проекций.
  4. 04
    Обработка ошибок и устойчивостьИдемпотентность, проблемные сообщения, очередь необработанных сообщений.
  5. 05
    Безопасность и complianceGDPR, персональные данные в хранилище событий, псевдонимизация, crypto-shredding, мультитенантность.
  6. 06
    Тестирование систем на ESСмешанные версии событий и тестирование на основе свойств.
  7. 07
    Миграция без простояДвойные проекции, сверка и переключение; опубликованные события как контракт.
  8. 08
    Когда не стоитКогда шина команд лишняя и когда CQRS/ES не нужны.
Лекция 1

Первая лекция курса — бесплатно

Посмотри, как Сергей Сучок объясняет материал, ещё до старта: почему сложным бизнес-доменам нужен DDD, как устроен курс и что ты построишь за 12 лабораторных.

Практический Advanced-курс
MasteringDomain-Driven
Design
DDD → CQRS → Event Sourcing → саги
Сергей Сучок · Лекция 1
Сергей Сучок
00:00
Формат обучения

Не видеокурс, а практика с код-ревью

Online · Advanced
1

Видеолекции

Теоретическая база: стратегический и тактический DDD, CQRS, Event Sourcing и углублённые темы.

2

Лабораторные на проекте

12 работ с критериями приёмки и тестами. В Platinum CI автоматически проверяет сборку и тесты в твоём приватном репозитории.

3

Тесты после каждого урока

Короткие тесты для самопроверки, чтобы закрепить материал перед следующим шагом.

4

Ревью и вебинары

В пакете Platinum работы проверяют менторы уровня Lead+, а автор курса Сергей Сучок проводит 6 вебинаров и отвечает на вопросы.

Доступ и результат Длительность – 3 месяца, 6 вебинаров с Сергеем Сучком Доступ к лекциям и заданиям – 6 месяцев Обучение в собственном темпе Сертификат после успешного завершения
Что нужно на старте От 2 лет опыта backend-разработки на ООП-языке Понимание REST API и реляционных баз данных Базовые навыки работы с Git и Docker
Почему этот курс

DDD, CQRS и Event Sourcing – на практике, а не на слайдах

/01

Сквозной проект

Одна система за 12 лабораторных вместо разрозненных примеров. Архитектура развивается вместе с продуктом.

/02

Твой язык – наши паттерны

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

/03

Без «магии» фреймворков

Паттерны реализуешь вручную, поэтому знания применимы на любом стеке и в любой компании.

/04

Production-стек

MongoDB, PostgreSQL, Kafka, Docker, CI/CD – инструменты, которые упоминаются в вакансиях.

/05

Взвешенные компромиссы

Учимся не только применять паттерны, но и понимать, когда от них стоит отказаться. Это навык уровня senior и architect.

/06

Код-ревью от Lead+

Практические работы проверяют действующие техлиды – с подробным фидбеком по твоему коду.

Что изменится после курса

От CRUD к архитектуре, которой можно гордиться

→
Проект в портфолиоПолноценный бэкенд на DDD + CQRS + Event Sourcing с тестами, CI и документацией.
→
Уверенность на собеседованияхОбъясняешь агрегаты, проекции и саги на примере системы, которую построил сам.
→
Навыки для рабочего проектаМоделирование домена, границы модулей, интеграция через доменные события – можно применить сразу.
→
СертификатПодтверждение прохождения курса после успешного завершения.
Зачем DDD, если есть микросервисы? Микросервисы не помогли – получился распределённый монолит

DDD – это фундамент правильного разбиения системы на части. Без чётких границ контекстов сервисы начинают зависеть друг от друга. На курсе ты строишь модульный монолит и учишься проводить границы между модулями. Именно эти границы впоследствии становятся границами сервисов.

Сергей Сучок, автор курса
Автор курса

Сергей Сучок

Tech Lead · Java Lead Developer · автор курса и ведущий вебинаров
20+лет в IT
Tech Leadв коммерческих проектах
JavaLead Developer

Более 20 лет в разработке программного обеспечения, в том числе на Java. Сейчас занимает позицию Tech Lead в коммерческих проектах: отвечает за архитектурные решения, управление командой разработчиков и контроль качества кода. Автор курсов Mastering Microservices Patterns и Unit-тестирование в Java в FoxmindEd.

Профессиональные интересы
DDD CQRS Event Sourcing Hexagonal Architecture Микросервисы Twelve-Factor App Spring Boot Тестирование
Форматы и стоимость обучения

Выбери свой формат

Online · самостоятельно

Gold

Экспресс-формат: все материалы сразу, проходишь в своём темпе

  • Все лекции и 12 лабораторных со сквозным проектом
  • Тесты после каждого урока
  • Лабораторные выполняешь самостоятельно, без дедлайнов*
  • Свободный график, без привязки к вебинарам
  • Доступ: 6 месяцев с момента покупки
  • Доступ открывается сразу после оплаты
19 300 грн | 476 USD
Записаться
* Месяц проверки заданий можно приобрести отдельно за $250.
Online · код-ревью · вебинары с автором Старт: 30 ноября

Platinum

Полное погружение с персональным код-ревью и живыми вебинарами с автором

  • Все лекции и 12 лабораторных со сквозным проектом
  • Тесты после каждого урока и автопроверка в CI
  • Проверка заданий* и персональное код-ревью от менторов уровня Lead+
  • 6 вебинаров с Сергеем Сучком
  • Доступ: 6 месяцев с момента старта потока
–20% до 12 ноября 36 000 грн
28 800 грн | 710 USD
Записаться
Сейчас Platinum дороже Gold всего на 9 500 грн – и это проверка заданий, код-ревью и 6 вебинаров с автором. * Проверка заданий в течение 3 месяцев. Дополнительный месяц проверки – $250.
Цена запуска первого потока · Platinum –20% на пакет Platinum до 12 ноября
  1. 28 800 грн710 USD –20% до 12 ноября Действует сейчас
  2. 32 400 грн 799 USD –10% 13 – 22 ноября Следующий этап
  3. 36 000 грн 888 USD Полная цена с 23 ноября Старт 30 ноября
Скидка действует до указанной даты включительно. На пакет Gold скидки не действуют.
Доступна оплата частями от Monobank и ПриватБанк
Бесплатная консультация

Свяжитесь с нами

Нужно больше информации?

  • Поможем выбрать пакет – Gold или Platinum
  • Предложим лучшие условия
  • Ответим на все вопросы о курсе



    Отправляя сообщениe, вы соглашаетесь с нашей офертой.

    FAQ

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

    Я пишу не на Java. Мне подойдёт? +

    Да. Материалы объясняют концепции независимо от языка, а практические задания можно выполнять на любом объектно-ориентированном языке для бэкенда.

    Я уже читал книгу Эрика Эванса. Что нового? +

    Книга даёт теорию, курс – практику: 12 лабораторных с критериями приёмки, код-ревью от менторов и вебинары, на которых автор курса отвечает на вопросы. Именно практики чаще всего не хватает после прочтения «синей книги».

    У меня мало времени. Успею? +

    Курс можно проходить в собственном темпе. Доступ к лекциям и заданиям – 6 месяцев, а рекомендуемый график – ориентир, а не жёсткий дедлайн.

    Зачем мне DDD, если у нас микросервисы? +

    DDD – фундамент правильного разбиения системы на части. Без чётких границ контекстов микросервисы превращаются в распределённый монолит. На курсе ты учишься проводить границы между модулями, которые впоследствии становятся границами сервисов.

    Нужно ли сначала пройти курс по паттернам микросервисов? +

    Желательно, но не обязательно, если общее понимание микросервисов уже есть. Если нет, у Сергея Сучка есть отдельный курс Mastering Microservices Patterns – о нём расскажет менеджер на консультации. В лабораторных строится модульный монолит, который можно мигрировать на микросервисы, но сама миграция вне курса.

    Не устарели ли эти подходы? +

    Нет. DDD, CQRS и Event Sourcing активно используют в финтехе, e-commerce и enterprise-продуктах, и они регулярно появляются в требованиях к senior- и architect-вакансиям.

    Будут ли готовые решения? +

    Курс даёт подсказки, примеры и критерии приёмки, но не готовый код для копирования. Решения ты проектируешь сам, и именно это формирует навык.

    Кто проверяет практические задания? +

    В пакете Platinum каждую лабораторную проверяют менторы уровня Lead+ с подробным персональным код-ревью. В пакете Gold задания доступны для самостоятельного выполнения, без проверки ментором.

    Будет ли сертификат? +

    Да, после успешного завершения курса ты получаешь сертификат.

    Код, который говорит на языке бизнеса

    Записаться на курс