Intermediate Free 6 Lessons

Kafka with Spring Boot: Make ShopStream Event-Driven

Instructor SystemDR team
Kafka with Spring Boot: Make ShopStream Event-Driven — free course
Free
Full access, no credit card needed
Preview a lesson free — no account needed Day 1: Publish your first OrderPlaced event

This course includes

  • 6 lessons across 3 modules
  • Hands-on coding exercises
  • Downloadable resources & code
  • Full GitHub repository access
  • Certificate of completion
  • 12 months of access
6
Lessons
3
Modules

Why This Course?

ShopStream's order-service calls fulfillment over HTTP: when fulfillment is slow, checkout is slow; when it is down, orders fail. Most Kafka tutorials stop at "send a message". This one breaks things on purpose — a stopped consumer, a wrong partition key, a slow consumer that triggers a rebalance storm, a broker killed mid-write, a crash between a database commit and a publish — and measures what each failure costs in lost, duplicated or out-of-order orders. Then you fix each one with the setting or pattern production teams use.

What You'll Build

Two Spring Boot 3.5 services — order-service and fulfillment-service — talking through Apache Kafka 3.9 in KRaft mode: keyed order events on a 6-partition topic, a consumer group of three, a 3-broker cluster with acks=all and an idempotent producer, a transactional outbox backed by a database, a dead-letter topic and a lag alert. Every lesson ends with a demo that prints real numbers and a verify script that gives you a completion code.

Who Should Take This Course?

  • Backend engineers who use Spring Boot and want to use Kafka without surprises.

  • Engineers preparing for system design interviews who need to explain ordering, delivery guarantees and the outbox pattern with evidence.

  • Anyone who finished "Scale ShopStream" (step 1 of the free path) and wants the event-driven version.

What Makes This Course Different?

No Docker, no cloud account: each lesson's start.sh downloads Kafka once and runs it locally or in the browser sandbox. Each lesson has a build, a deliberate break and a measurement — for example, killing the leader broker during 20,000 orders: acks=1 lost 65 acknowledged orders, acks=all without idempotence delivered 449 twice, and the safe producer lost and duplicated none.

What's Included

📚
Hands-on Lessons
6 lessons
💻
Hands-On Projects
Build real-world systems
📁
Source Code & Resources
Downloadable materials
🏆
Certificate
On completion
📅
12 Months Access
Learn at your own pace
📱
Any Device
Desktop, tablet & mobile
3 modules 6 lessons
Module 2
Reliability
2 lessons
▼
Module 3
Operations
1 lessons
▼

Repository

Source code Free and open source (MIT) on GitHub

Run it on your machine (Linux, macOS or WSL; needs Python 3.10+ and Redis):

git clone https://github.com/sysdr/shopstream-kafka-spring-boot.git
cd shopstream-kafka-spring-boot
bash test_all.sh  # runs all lessons, or: cd lessons/lesson-1 && bash start.sh

In the sandbox, run: cd lessons/lesson-1 && bash start.sh

Prerequisites

  • Basic Java and Spring Boot (controllers, configuration properties).

  • A terminal. Java 17+, Maven 3.8+ and Python 3 if you run locally; the browser sandbox has everything.

Kafka with Spring Boot: Make ShopStream Event-Driven — free course
Free
Full access, no credit card needed
Preview a lesson free — no account needed Day 1: Publish your first OrderPlaced event

This course includes

  • 6 lessons across 3 modules
  • Hands-on coding exercises
  • Downloadable resources & code
  • Full GitHub repository access
  • Certificate of completion
  • 12 months of access

Discussion

Leave a Reply

Your email address will not be published. Required fields are marked *

Country

Showing international pricing ($)

System Design Fundamentals – E-Book

Free download

Free eBook: System Design Fundamentals

Create a free account and download the ebook instantly. Learn the core building blocks — scaling, caching, databases and messaging — the way interviewers expect you to explain them.

Register free & download →

Already a member? Sign in to download · See what’s inside