Module 01 · 4 lessons
Foundations and architectural decisions
Choose asynchronous boundaries, then connect Kafka partitions, consumer groups, ordering, and delivery semantics to business outcomes.
17-lesson production course
Learn which boundary accepts a message, where duplicates and reordering appear, and which evidence proves publication, consumption, recovery, and user-visible completion.
Five ordered modules · approximately 5.5 hours
Each module keeps broker guarantees, application transactions, external effects, and business recovery separate enough to test.
Module 01 · 4 lessons
Choose asynchronous boundaries, then connect Kafka partitions, consumer groups, ordering, and delivery semantics to business outcomes.
Module 02 · 4 lessons
Define stable envelopes and schemas, evolve them compatibly, and publish durable business facts through an operated outbox.
Module 03 · 4 lessons
Make consumer effects duplicate-safe, configure bounded Spring Kafka recovery, and converge when records arrive late or more than once.
Module 04 · 4 lessons
Coordinate long-running work and troubleshoot real event flows from durable intent through consumer state and user recovery.
Module 05 · 1 lessons
Run deterministic crash, retry, acknowledgement, and idempotency scenarios, then connect each timeline to production evidence and recovery ownership.
Course library
Shared lessons keep one canonical article URL while their completion counts in every course that contains them.
System Design Aug 18, 2026 4 min read
Learn when event-driven architecture helps, where its reliability boundaries sit, and how to choose events, commands, state, and recovery contracts.
System Design Jun 29, 2026 5 min read
Learn how message queues work in backend systems, including producers, consumers, retries, dead-letter queues, ordering, and idempotency.
System Design Aug 18, 2026 4 min read
Understand Kafka topics, partition logs, keys, offsets, consumer groups, rebalances, and the exact boundaries of ordering and parallel processing.
System Design Jul 29, 2026 12 min read
Compare at-most-once, at-least-once, and exactly-once messaging by tracing producer, broker, consumer, acknowledgment, and side-effect failures.
System Design Aug 18, 2026 4 min read
Design stable event envelopes, payload schemas, channels, and operations with CloudEvents and AsyncAPI without confusing contracts with delivery guarantees.
System Design Aug 18, 2026 4 min read
Evolve event payloads safely with explicit semantics, compatibility checks, tolerant readers, staged rollout, replay evidence, and deprecation boundaries.
System Design Jul 29, 2026 11 min read
Prevent database and message broker dual-write failures with a transactional outbox, PostgreSQL locking, and Java and Node.js publishers.
System Design Aug 18, 2026 4 min read
Build a Spring Boot transactional outbox that commits business state with publication intent, survives relay crashes, and exposes duplicate-safe evidence.
System Design Jul 29, 2026 11 min read
Make at-least-once message processing duplicate-safe with PostgreSQL unique constraints, atomic business updates, and Java and Node.js consumers.
System Design Aug 18, 2026 4 min read
Design Spring Kafka consumers around durable effects, offset and acknowledgment boundaries, bounded retries, dead-letter recovery, and idempotency.
System Design Jul 29, 2026 12 min read
Design dead-letter handling with bounded retries, failure metadata, alerting, approved replay, and duplicate-safe Java and Node.js recovery workflows.
System Design Aug 18, 2026 4 min read
Keep event-driven state correct across duplicates and reordering with stable identity, entity versions, conditional updates, and explicit convergence rules.
System Design Jul 29, 2026 11 min read
Coordinate cross-service workflows with Saga choreography or orchestration, durable state, idempotent steps, compensation, and manual recovery.
System Design Jun 29, 2026 5 min read
Learn how background jobs work in backend systems, including queues, workers, retries, scheduling, idempotency, and monitoring.
API Design Jun 29, 2026 4 min read
Learn how webhooks work in backend systems, including event delivery, signatures, retries, idempotency, and common design mistakes.
System Design Aug 18, 2026 4 min read
Troubleshoot event-driven incidents through user impact, producer acceptance, partition health, consumer progress, retries, and business reconciliation.
System Design Aug 18, 2026 8 min read
Run four deterministic delivery scenarios to see how ACK timing, crashes, retries, stable IDs, and DLQ boundaries change business outcomes.
FAQ
No. The reliability model is broker-neutral, while Kafka and Spring Boot provide concrete examples whose versioned boundaries are stated explicitly.
No. It distinguishes broker transactions from database and external side effects, then uses stable identity, idempotency, reconciliation, and recovery contracts.
Basic HTTP, database transaction, and backend service knowledge is enough. The first module introduces the messaging concepts used later.