Crash Course: Domain Driven Design

Як виміряти, показати й захистити межі в системі, яка вже в проді

Ментор — Віталій Григоришин, Team Lead at Balto Health, 19 років в IT

Програма
Crash Course: Domain Driven Design
Курс: DDD — архітектура на фактах — Fwdays
про курс

Як виміряти, показати й захистити межі в системі, яка вже в проді

Цей курс — для систем, які вже працюють у продакшені: з накопиченою історією рішень, легасі та залежностями, яких ніхто не планував. Інтуїція Senior-розробника зазвичай не підводить, але її не можна покласти на стіл: перевірити, передати команді чи захистити перед менеджментом.

Ментор: Віталій Григоришин, Tech Lead, 19 років в IT.

На реальних кейсах ви навчитесь знаходити межі контекстів за доказами, які вже є у вашій системі, рахувати ціну кожної межі й закріплювати її так, щоб вона не розмивалась з часом.

Після курсу ви:

  • зможете знайти кандидатів на межі у власній системі за фактами з коду й даних, а не за відчуттями
  • навчитесь рахувати ціну межі: у швидкості змін, зв'язності релізів, вартості узгодження між командами
  • зрозумієте, чому системи, вже розділені на сервіси, продовжують поводитись як одна
  • зможете обґрунтувати архітектурне рішення так, щоб його прийняли команда і бізнес
  • закріпите межу у збірці, щоб її не доводилось захищати вручну
формат
Дата та час13 та 15 жовтня о 18:30, 17 жовтня о 10:00
Тривалість~2,5 години кожна сесія
Теорія і практика50/50 — живий розбір реального репозиторію з кодом на екрані
Домашнє завданняНаскрізний проєкт, крок за кроком після кожного вебінару
ПлатформаОнлайн-сесії в Zoom, матеріали й записи — на навчальній платформі
ПідготовкаДоступ до репозиторію з історією комітів — робочого або власного
Мова заходуУкраїнська (англійські терміни)
аудиторія
  • Senior-розробники, які відповідають за архітектурні рішення
  • Архітектори і техліди
  • Всі, хто вже намагався провести межі в системі — і не зміг пояснити команді, чому саме там
програма

Три вебінари: знайти, провести, утримати межі

NameTopicSession
session-1 Знайти межі 13 жовт · 1/3
  • – Піддомен, обмежений контекст (Bounded Context), сервіс, база, команда: що з чим не збігається і чим за це платять
  • – Джерела фактів: спільні зміни в коді, розсіювання фічі, межі транзакцій, фактична власність над кодом
  • – Живий розбір: від git log до теплової карти зчеплення (coupling heatmap)
  • – Від цифр до рішення: чому метрики не показують домен, а лише відкидають погані межі
  • – Кейси: межа, проведена за схемою бази; межа, що збіглася з межею команди
session-2 Провести межі 15 жовт · 2/3
  • – Контекстна карта (Context Map) як технічний контракт, а не діаграма: типи відносин і ціна кожного
  • – Захисний шар (Anti-corruption Layer): де його ставити, коли він зайвий і як не перетворити його на другу модель
  • – Спільна база як найдешевший спосіб знищити щойно проведену межу
  • – Від межі контексту до нарізки агрегатів (Aggregate)
  • – Запис архітектурного рішення (ADR): як зафіксувати рішення разом із ціною
  • – Кейси: інтеграція через спільну модель і рахунок за неї; рішення, яке не вдалося продавити
session-3 Утримати межі 17 жовт · 3/3
  • – Агрегат як межа транзакції: що мусить бути узгодженим одномоментно
  • – Коли розділена система поводиться як одна: діагностика в цифрах і чому це помилка інтеграції, а не розбиття
  • – Перевірка межі у збірці (CI): правило, яке валить білд на забороненому імпорті між контекстами — розбираємо готове і ламаємо межу наживо
  • – Що тримає межу під навантаженням: атомарний запис події разом зі станом, поведінка при збоях доставки, ідемпотентність на боці споживача
  • – Куди рухатись далі: еволюція меж на живій системі
домашнє завдання

Наскрізний проєкт на власному репозиторії: матриця зчеплення → ADR на одну межу → правило, яке падає на забороненому імпорті через цю межу. Правило запускається локально, підключення до CI — за бажанням.

Ментор оцінює не бізнес-логіку вашого домену, а механіку методу: чи випливає межа з наведених метрик, чи названа її ціна і чи розглянуті альтернативи.

ментор

Віталій Григоришин, Team Lead at Balto Health

Віталій Григоришин
Team Lead at Balto Health
  • – 19 років в IT, з них 13 у highload-системах та e-commerce
  • – Керує двома командами — розробки та аналітики. Звідси й підхід: архітектурні межі можна не тільки відчувати, а й рахувати
  • – Засновник think.wider.ukraine (про технології і бізнес простою мовою)
  • – Вибудовує здорові межі. Здебільшого в чужих системах
  • LinkedIn

Вартість участі

Attendee's ticket

Доступ до онлайн-трансляцій (~10 годин)

Презентація та матеріали

Доступ до запису курсу на навчальній платформі

Доступ до чату в ТГ, де спікер буде відповідати на питання

Сертифікат учасника за умови виконання домашніх завдань

Безкоштовний місяць в Fwdays Club

Знижка 10% на участь в конференціях Fwdays

Доступна оплата частинами від Monobank та покупка частинами від Приватбанку
Якщо після першого заняття ви зрозумієте, що очікування не співпадають, ми повертаємо гроші в повному обсязі.
5 600 грн ≈€112
5 квитків
наступні 30 — 6200 грн≈€124
наступні 5 — 7800 грн≈€156
Купити квиток
−10% для учасників попередніх подій 
Нараховується автоматично тому акаунту, з якого була здійснена покупка
−30% для студентів денної форми навчання 
Надішліть фото або скан студентського квитка на academy@fwdays.com, і ми відправимо вам промокод
Діють спеціальні умови для військовослужбовців та УБД.
Заповніть форму, щоб отримати персональний промокод
Діють групові знижки
Напишіть нам на academy@fwdays.com для прорахування вашої знижки.
Увійти
Або поштою
Увійти
Або поштою
Реєстрація через e-mail
Реєстрація через e-mail
Забули пароль?