Apache Kafka for Java & Spring Boot Developers
Go from event-streaming fundamentals to production-grade Kafka with Spring Boot, covering architecture internals, exactly-once semantics, Kafka Streams, AWS MSK operations, and a full capstone.
Overview
This course takes Java and Spring Boot microservice developers, with beginner-to-intermediate experience, from Apache Kafka fundamentals to production-grade event streaming. You already know Java, Spring Boot, and REST-based microservices. Here you add the log-based mental model, Kafka’s architecture and internals, reliable delivery and exactly-once semantics, stream processing, and the operational maturity to run Kafka on AWS MSK.
Table of Contents
Course Sections
The course is organized into ten progressive sections. Section 0 builds the mental model from zero, Sections 1 to 6 build the developer skill set from beginner to advanced, Section 7 hardens for production, Section 8 is a standalone operations and troubleshooting reference for on-call rotations, and Section 9 ties everything together.
- Kafka and Messaging Foundations: why event streaming over REST, the append-only log mental model, and the core vocabulary that separates Kafka from a queue.
- Architecture and Internals: cluster anatomy, the control plane (KRaft and ZooKeeper, both in depth), and the commit log on disk.
- Local Lab and Setup: a Docker Compose KRaft cluster, the CLI tools, and topic management so you can experiment freely.
- Building with Spring for Apache Kafka: producers and consumers with serialization, keys and partitioning, consumer groups, offsets, and concurrency.
- Schema Management: Schema Registry with Avro, Protobuf, and JSON Schema, plus compatibility modes and safe evolution.
- Reliability and Delivery Semantics: delivery guarantees, the idempotent producer, transactions and exactly-once, retries and dead letter topics, idempotent consumers, and rebalancing.
- Event-Driven Architecture and Advanced Patterns: topic design, the transactional outbox and CDC, Kafka Streams in depth, and Kafka Connect.
- Production Readiness: security, observability and consumer lag, performance tuning, and testing.
- Operations and Troubleshooting: MSK architecture, tooling, twelve PROD alert playbooks, a hands-on incident lab, escalation, and a cheat sheet.
- Capstone and Assessment: build an end-to-end event-driven order system and validate your understanding.
Who This Is For
- Developers building Spring Boot microservices who need to add event streaming and event-driven design to their toolkit.
- Architects deciding how services should communicate, and who need partitioning, delivery-guarantee, and stream-processing trade-offs at their fingertips.
- SRE-adjacent and application-support engineers who want the developer context behind the alerts they respond to (Section 8 is a standalone operational reference).
You should be comfortable with Java, Spring Boot, and REST-based microservices. No prior Kafka, event-streaming, or messaging experience is assumed. The Foundations section builds the mental model from zero; each later section is self-contained but assumes the ones before it.
Start with the mental model shift
Why Kafka: REST vs Messaging vs Event Streaming
Understand why event-driven services reach for a durable, replayable log instead of direct REST calls, then meet the four moving parts of Kafka.