Skip to content
UdemyBestseller on UdemyHadoopPaid courseIntermediate levelCertificate

Apache Kafka Series - Kafka Streams for Data Processing (Udemy.com)

Learn the Kafka Streams API with Hands-On Examples, Learn Exactly Once, Build and Deploy Apps with Java 8

Created by: Stephane Maarek

Last updated September 2026

Our take

Based on the ratings of 6,826 students, a sample of their written reviews and the syllabus, as the course stood in September 2026. No course pays to be reviewed.

This is a short course, about 4.8 hours over 76 lectures, on writing applications with the Kafka Streams library. It starts with WordCount, then packages and scales it. From there it moves through stateless and stateful KStream and KTable operations, exactly once semantics, a GlobalKTable join and topology testing. Two practice projects, Favourite Colour and Bank Balance, have students write the app before the solution is explained. Roughly 63,000 students have enrolled. The syllabus assumes you already know Kafka and Java 8, so it is not a place to start from zero.

Reviewers like the teaching. They call Stephane Maarek clear, and one praises the mix of theory and hands-on work, saying the harder exercises sent them into the documentation in a useful way. The complaints are consistent. The code was written for Kafka Streams 0.11 and Java 8, and some students say examples needed changes to run on current versions. Others wanted more depth. They mention the Processor API, stream-to-stream joins, state stores and interactive queries as missing. One reviewer called it a rewording of the official docs. There are no quizzes.

The listing shows an update in September 2026, yet recent reviewers still ask for a refresh to a newer Kafka version. Even so, roughly nine in ten of the 6,826 ratings are four or five stars. It reads best as a fast, clear introduction to the concepts. Expect to adapt the code as you go, and plan to look elsewhere for production-level depth.

Best forJava developers who know Kafka basics and want a quick, practical first pass at the Kafka Streams DSL.
Skip it ifYou need the Processor API, state stores or stream-stream joins, or want code that runs on current Kafka unchanged.

Pros

  • Reviewers call Stephane clear, and one likes the mix of theory and hands-on work
  • Favourite Colour and Bank Balance exercises have students write real apps before seeing solutions
  • Covers exactly once semantics, scaling, packaging and topology testing in under five hours
  • Reviewers say the concepts hold up and the course works well as an entry point to Kafka Streams

Cons

  • Built on Kafka Streams 0.11 and Java 8, so some examples need code changes on current versions
  • Light on advanced topics: Processor API, stream-stream joins, state stores and interactive queries
  • No quizzes or graded exercises, and some sections explain a problem without a concrete demo
Really good as a starting point to learn Kafka Streams. Kafka Streams Processor API would be great for the advanced section, but maybe this course was intended for beginner developers.
Denis Khaziev, a student

Labeled intermediate, and fair: it assumes working Kafka knowledge and Java 8, so it is not the place to learn either.

icon
What you will learn

  • Write four Kafka Streams application in Java 8
  • Configure Kafka Streams to use Exactly Once Semantics
  • Scale Kafka Streams applications
  • Program with the High Level DSL of Kafka Streams
  • Build and package your application
  • Write tests for your Kafka Streams Topology
  • And so much more!

Course content

11 sections · 76 lectures · 4.9 hours of video 5 articles

  1. 1Kafka Streams - First Look 4 free previews5 lectures · 28 min
  2. 2Code Download1 lecture
  3. 3End to End Kafka Streams Application - Word Count 1 free preview15 lectures · 1.2 hours
  4. 4KStreams and KTables Simple Operations (Stateless)16 lectures · 46 min
  5. 5Practice Exercise - FavouriteColour5 lectures · 27 min
  6. 6KStreams and KTables Advanced Operations (Stateful)9 lectures · 17 min
  7. 7Exactly Once Semantics - Theory4 lectures · 12 min
  8. 8Exactly Once Semantics - Practice Exercise - BankBalance7 lectures · 35 min
  9. 9Joins - KStream to GlobalKTable example6 lectures · 26 min
  10. 10Testing your Kafka Streams Application5 lectures · 23 min

Who it is for

The instructor says it suits

  • Developers and devops who would like to learn how to write, package, deploy and run a Kafka Streams applications
  • Architects who would like to understand how Kafka Streams work and its position in the Kafka-centered data pipeline and enterprise architecture
  • People who fully understand the basics of Kafka
  • Java 8 and Scala developers only

What you need before you start

  • Good knowledge of Apache Kafka
  • A recent computer (Windows / Linux / Mac OS X) with 4GB of RAM
  • Good knowledge of Java 8 Programming Language

How it compares

Against the other 150 rated Udemy courses in Hadoop on CourseDuck:

  • Rating4.8 out of 5higher than 96% of them
  • Reviews6,826#9 of 151 by number of reviews
  • Length4.8 hoursshorter than 62% of them
  • Last updatedSeptember 2026more recently than 94% of them

icon
Course Description

The new volume in the Apache Kafka Series!

Learn the Kafka Streams data processing library, for Apache Kafka. Join hundreds of knowledge savvy students into learning one of the most promising data processing library on Apache Kafka.


Kafka Streams
is the easiest way to write your applications on top of Kafka:

> Easiest way to transform your data using the High Level DSL
> Exactly Once semantics support out of the box!
> Deploy and Scale your Kafka Streams application without a cluster!
> Perform Aggregations, joins, and any operations you may think of using only a few lines of code!
> Built on top of Kafka, for fault tolerance, scalability and resiliency

Hands On & Theory Based Course

Note: This course is based on Java 8, and will include one example in Scala. Kafka Streams is Java based, and therefore is not suited for any other programming language. 

Each section can be either theoretical, or a practice section. 

> Through practice, you will be challenged by writing your own Kafka Streams application. The solutions will be thoroughly explained, and you will learn some tips on how to use Kafka Streams the best way.

> Through theory, you will learn about all the available API, the inner workings of the library, as well as some exciting concepts such as Exactly Once Semantics!

This course is the first and only available Kafka Streams course on the web. Get it now to become a Kafka expert!


Section outline:

  1. Kafka Streams - First Look: Let's get Kafka started and run your first Kafka Streams application, WordCount

  2. End-to-End Kafka Streams Application : Write the code for the WordCount, bring in the dependencies, build and package your application, and learn how to scale it. This is a complete end to end example

  3. KStream and KTable Simple Operations: Learn all the stateless operations available for the KStream and KTable API

  4. Practice Exercise - Favourite Colour: Practice your newly acquired skills by writing your own Kafka Streams application, Favourite Colour. It will be challenging! Includes a Scala version of the example

  5. KStream and KTable Advanced Operations: Learn all the stateful operations available for the KStream and KTable API

  6. Exactly Once Semantics - Theory: Learn what EOS (Exactly Once Semantics) is, how Kafka 0.11 enables it, and how to activate them in Kafka Streams

  7. Exactly Once - Practice Exercise - Bank Balance: Practice your newly acquired knowledge by writing your own Kafka Streams Exactly Once application, to compute a running Bank Balance for your customers

  8. Testing your Kafka Streams Application: Learn how to test the WordCount Kafka Streams Topology with Kafka Streams v1.1.0


===============================

Instructor

My name is Stephane Maarek, and I'll be your instructor in this course. I teach about Apache Kafka, the Kafka ecosystem and Kafka Certifications with my focus always on helping my students improve their professional proficiencies. I am also the co-founder of Conduktor: an enterprise Apache Kafka platform & UI to help everyone use Kafka.

Throughout my career in designing and delivering these certifications and courses, I have already taught 1,000,000+ students and gotten 350,000+ reviews!

With Apache Kafka becoming much more than a buzzword out there, I've decided it's time for students to properly learn how to be a Kafka professional. So, let’s kick start the course! You are in good hands!

===============================

This Course Also Comes With:

  • Lifetime Access to All Future Updates

  • A responsive instructor in the Q&A Section

  • Links to interesting articles, and lots of good code to base your next applications onto

  • Udemy Certificate of Completion Ready for Download

This is the course that could improve your career!

Apache Kafka is a skill in high demand and there are not enough people to fulfill all the open positions. You can boost your income, take on new roles and fun challenges. Many of my students are now the Kafka experts of their companies! You can be the next!

I hope to see you inside the course!

=======================

Note: Looking for more advanced Kafka concepts? There are many volumes in the Apache Kafka Series:

  • Learn Kafka for Beginners v2 (great to start)

  • Kafka Connect Hands On Learning

  • Kafka Streams for Data Processing

  • KSQL on ksqlDB - Hands On!

  • Kafka Cluster Setup & Administration

  • Confluent Schema Registry & Kafka REST Proxy

  • Kafka Security (SSL SASL ACL)

  • Kafka Monitoring and Operations

Happy learning!

icon
Udemy Discount

The discount is applied through our link. Open the course from here and Udemy's current promotional price is applied at checkout on most courses, no code to type.

Some courses are excluded from Udemy's promotions. If the price does not drop, clear your browser cookies and use the button again.

icon
Instructor Details

Stephane Maarek

Stephane is a solutions architect, consultant and software developer that has a particular interest in all things related to Cloud & Big Data. He's also a many-times best seller instructor on Udemy for his courses in AWS and Apache Kafka.


[See FAQ below to see in which order you can take my courses]

Stéphane is recognized as an AWS Hero and is an AWS Certified Solutions Architect Professional & AWS Certified DevOps Professional. He loves to teach people how to use the AWS properly, to get them ready for their AWS certifications, and most importantly for the real world.

He also loves Apache Kafka. He used on the Program Committee organizing the Kafka Summit in New York, London and San Francisco. He also was an active member of the Apache Kafka community, and has authored blogs on Medium and the guest blog for Confluent. He also has co-founded Conduktor, a prominent company in the Kafka ecosystem.


During his spare time, Stéphane composes piano music, that he publishes online under the artist name Makera ?


FAQ: In which order should you learn?...

icon
More courses by Stephane Maarek

$129.99

$159.99

$159.99

$99.99

$49.99

$139.99

icon
More Hadoop courses

$11.99

$12.99

$94.99

$10.99

$39.99

$89.99

icon
Reviews

4.8

6,826 ratings on Udemy

Select a bar to show only those reviews.Select the bar again to show every rating.

By Karan Chaudhary on 12/28/2025

Demand for good kafka engineers in fortune 500 companies is more than ever and will keep growing. For software engineers, I believe kafka and kafka streams programming is must have. A good hands-on course with kafka streams and i got to learn even more deeper concepts involved in java.

By Thangam on 12/3/2025

“I really love your course. I’ve learned a lot, and it has encouraged me to keep learning more and more. Please create more courses on trending technologies. Many people don’t get enough time to read long pages and study, but your course is helping people like me. Thank you so much!”

By Gabriel Gustavo Conti dos Santos on 10/24/2025

Excellent content to start on kafka streams. This approach of having more external links (such as git repos) rather than internal course content is way better, since it facilitates the access on external devices. This way I can keep training in my personal computer with the course content. Thanks a lot.

By Gujjula Anvesh Reddy on 2/9/2021

I was able to develop my own Kafka Streams application with test cases implementation. Examples in this course have given enough confidence to implement Streams concept in workplace. Thanks Stephane!! for helping understand basic concept of Streams.

By Francisco Ramón Díaz Bayón on 1/4/2021

Muy buen curso de introducción al mundo de los Streams de Kafka, que te permite a través de ejemplos y prácticas sencillas, absorber los conocimientos necesarios para enfrentarte a nuevos retos en los que poder aplicar lo aprendido.

By Luiz Kimel on 11/21/2020

The course is a great introduction and exercise. Also a great refresher for java coding overall as the author will explain, very concisely, basic but required steps such as maven managing dependencies and writing junit test cases. Indeed, last lesson on how to write unit tests for your kafka streams is really a very fast ramp-up to start fast with productivity.
Not so good parts are two:
1) content is outdated and lots of code examples won't work as shown in video, yet fixing to continue the course is an excellent exercise in itself. Seems the git with source codes have a branch updated with latest code that runs on current kafka;
2) the course won't enter in-depth on real scenario use of some critical functions such as GlobalKTable. I'm leaving the course feeling I can create my early Kafka Streams, but without knowing, for instance, how to deal with large look-up tables efficiently. Should Kafka Stream app query DB when record is not found on GlobalKTable? Can I rotate its content to remove records not used recently? Should I combine with a Redis cache instead and run HTTP calls? Can I do this in a non-blocking way so Kafka Stream App will be able to start processing other records while HTTP call won't return? What would be recommended number of partitions to start with in production? How to evaluate that? So many doubts.. even though I'm able to have those detailed doubts now thanks to the basic knowledge gained in this course.

By Werner de Groot on 11/14/2020

Goed, veel detail en prima tempo.

By David Appler on 11/7/2020

Very good course!!!

By Alok PARIJA on 11/7/2020

well explained theory of kafka Streams and handson examples are great to exercise the learning.

By Sallo Szrajbman on 11/7/2020

Huge content! A lot of new knowledge!
This is a more advanced course but with the good instructor job makes much simpler.

By Chee Sing Pok on 10/27/2020

Great course to learn about Kafka Streaming without having to go through a bunch of documentation. Practical hands-on but demonstrated with some outdated sample codes. Hard to blame the author because Kafka is being updated quite frequently. However it is not hard to correct the practice source codes with the the help from the Internet as well as Q&A section.

By Pedro Rben Lopes Marques on 10/21/2020

It was a really good introduction to kafka stream and really really well lectured. My idea when i applied to this course was to learn more about join and it was the section with less effort that's why it's a 4 starts and not a 5.
Besides that thank you so much.

Showing 12 of 317 reviews

icon
Quality Score

No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 96 / 100