With the Kafka Streams for Data Processing Udemy course, I mark as completed my basic journey to learn some basics about this platform. I wanted to do this course as one of the topics it covers, exactly-once semantics, were precisely one of the main goals of choosing Kafka as the transport layer, and Streams are needed in order to achieve it.
We learn the basics about Kafka Streams, Topologies, KStream and KTables, as I mentioned before Exactly once semantics, plus aggregations, joins and other operations supported by the High Level DSL. Examples are coded in Java (one also in Scala) and this time the author shows how to do testing of the Topologies you build.
It is indeed more advanced than the basic and Connector courses, and while the examples are nice and you get to build 3 small applications, some of the theorical explanations are a bit vage, and a few ones terrible, like what an Outer Join is, forcing you to go to the "related resources" (a Confluent.io blog post with a real, proper explanation) to understand them. Again you can perfectly watch it at 1.25x and will probably still skip chunks of the code walkthrough videos as the actual logic is quite small and the configuration changes (e.g. to activate idempotency at Producers, or exactly once behaviour at the streams) are just a few.
If you grab the course with a discount is fine, but at the full price displayed at Udemy (100€) feels pricey.