Most Kafka courses stop where production begins.
Deep, correct courses on Java, Kafka and Flink — traced to the official docs, built on one continuous system you actually run. Not a hello-world producer and a wave goodbye.
by topic
and sketches
experience required
and basic Docker
The judgment, not just the vocabulary.
By the end you can look at a Kafka diagram — or a production incident — and say what is happening underneath. That is the gap between engineers who use Kafka and engineers who are trusted to design it.
A partition strategy you can defend
Why brokers, topics, and partitions are shaped the way they are, and how the log stays both durable and fast. You choose a topic and partition plan for a workload instead of guessing.
Delivery guarantees, on purpose
Producers, acknowledgments, and offset management. You pick at-least-once or exactly-once because the problem asks for it, and you can say what throughput you gave up to get there.
Lag and rebalancing you can diagnose
One consumer, many consumers, and the rebalancing storm. You can read the failure, not just restart the group and hope.
Schemas that survive change
Avro and Protobuf with the Schema Registry, so a new field does not silently break every consumer that was already in production.
Streams, SQL, and Connect
Kafka Streams and ksqlDB for real-time pipelines without standing up a second cluster, and Kafka Connect for databases and data lakes without custom glue.
A cluster that stays healthy
Performance tuning, monitoring, and the operational patterns that keep a cluster upright under load — the work that starts after the first consumer compiles.
The road into Kafka, then through it.
Two stages. Get the Java foundations under you, then walk the course in order. Nothing here assumes you have already run a broker.
What you should already be comfortable with
The course starts from first principles of Kafka. It does not reteach the language. A passing familiarity with distributed systems helps, and it is not required.
The order the course is built in
Architecture first, then the clients, then the failure modes, then the tools you reach for once the mental model is solid. Each stage uses the one before it.
Everything the Kafka course covers.
From producers and consumers to rebalancing storms and exactly-once semantics. Built on real failure scenarios. Spring Boot is used in the examples once the Kafka idea is already clear.
Design it, build it, and keep it running
You will work with real producers and consumers, real partitioning decisions, and the same incidents that show up in production: broker loss, consumer lag, and a rebalance that will not settle.
what the course walks through
what you leave able to do
- Choose a topic and partition strategy for a real workload
- Write producers and consumers with the guarantee the problem needs
- Diagnose consumer lag and a bad rebalance
- Build a streaming pipeline with Kafka Streams
- Argue throughput against durability in a design review
Two lessons you can open today.
The course index is the map. These are the first two lessons on it. Read them before you decide the rest of the track is for you.
Introduction to real-time data
Real-time data is not “we’ll know eventually.” It is knowing the instant something happens and acting on it. This lesson says what real-time means, why Kafka exists, and how one event reaches many systems at once.
Read the lesson →What is Apache Kafka?
A distributed event streaming platform for high-throughput, fault-tolerant, real-time pipelines. The mental model every Java developer needs before writing a line of Kafka code.
Read the lesson →If Kafka keeps showing up in the design meeting.
You do not need to already be a Kafka person. You need to be willing to build the model from the ground up.
Platform and backend engineers
You keep hearing “we should use Kafka” and you want to know what that sentence actually commits you to.
People weighing event-driven systems
Microservices, fintech, or a data platform — and a need to tell when Kafka’s trade-offs fit the problem.
System design prep
Kafka shows up as the building block. You want to talk about it as a design choice, not a buzzword.