course background
course
course

Event Driven Architecture

calendar-icon 28 - 29 Mar 2026
clock-icon 09:30 - 17:00
calendar-icon

Geeky Base (All stars)

calendar-icon

25 people

upload icon Back to class list

Event Driven Architecture


Course Objective
This workshop equips participants with a practical approach to evolve systems safely from a monolith
toward Event-Driven Architecture (EDA). Participants will learn how to reduce tight coupling, remove
long synchronous dependency chains, and design reliable asynchronous flows using proven patterns and
hands-on refactoring exercises.

Learning Outcomes
By the end of this workshop, participants will be able to:
1. Explain key principles of Event-Driven Architecture and identify suitable use cases.
2. Differentiate and apply Command, Event, and Query appropriately in system design.
3. Design modular boundaries and event flows that reduce synchronous dependencies.
4. Define event contracts, including naming conventions, payload structure, and versioning approach.
5. Apply CQRS and read model patterns to support fast reads and reduce runtime coupling.
6. Design for asynchronous reliability, including retries, idempotency, DLQ, and replay.
7. Compare choreography and orchestration and select an appropriate coordination approach.
8. Address distributed consistency challenges using Saga/compensation and the Outbox pattern.
9. Produce an incremental migration plan from monolith to modular monolith and event-driven
architecture.

Tools and Technology
  • Node.js
  • PostgreSQL
  • Apache Kafka
  • RabbitMQ
  • Kubernetes

Workshop Agenda
Day 1
— From Monolith to Modular Monolith
Topics
  • Identifying bounded contexts
  • Reducing tight coupling
  • Internal domain events
  • Command vs Event vs State
  • Designing proper module boundaries
Hands-on Workshop
Refactor a monolith into a clean modular monolith with a clear internal event flow.

Day 2 — From Modular Monolith to Event-Driven System
Topics
  • When to extract a service
  • Sync vs async trade-offs
  • Kafka vs RabbitMQ
  • Delivery guarantees and idempotency
  • Saga and compensation
  • Dual-write problem and Outbox pattern
Hands-on Workshop
Extract modules into services, introduce messaging, and handle duplicates, retries, and failure scenarios

Date & Time

28 - 29 Mar 2026

09:30 - 17:00

Course Name

Event Driven Architecture

View course

Max Participants

25 people

Instructor

logo

Twin Panitsombat

Distinguished Software Stylist

Pre-class Preparation

Not required