This course provides a technical introduction to Kafka development. The course describes the design goals underpinning Kafka, and explains key Kafka concepts such as partitions, replication, and consumer groups. The course then leads you on a detailed tour of the Kafka APIs in Java: you’ll learn how to publish and consume data to Kafka topics; how to manage the Kafka environment via the AdminClient API; and how to implement a stream-processing topology via the Streams API.