About the Course
I am creating Kafka Streams with Spring Cloud Streams to help you understand stream processing in general and apply it to Kafka Streams Programming using Spring Boot.
My approach to creating this course is a progressive common-sense approach to teaching a complex subject. Using this unique approach, I will help you apply your general ability to perceive, understand, and reason the concepts progressively that I am explaining in this course.
Who should take this Course?
Kafka Streams with Spring Cloud Streams course is designed for software engineers willing to develop a stream processing application using the Kafka Streams library and Spring Boot. I am also creating this course for data architects and data engineers responsible for designing and building the organization’s data-centric infrastructure. Another group of people is the managers and architects who do not directly work with Kafka implementation, but they work with the people who implement Kafka Streams at the ground level.
Kafka Version used in the Course
This course is using the Kafka Streams library compatible with Spring Cloud 2020. I have tested all the source code and examples used in this course on Confluent Platform 6.0.0 which is compatible with Apache Kafka 2.6 open source distribution.
Source Code, Development IDE, Build Tool, Logging, and Testing Tools
This course is fully example-driven, and I will be creating many examples in the class. The source code files for all the examples are included in your study material.
This course will be making extensive use of IntelliJ IDEA as the preferred development IDE. However, based on your prior experience, you should be able to work with any other IDE designed for Spring application development.
This course will be using Apache Maven and Gradle as the preferred build tool. However, based on your prior experience, you should be able to use any other build tool designed for Java applications.
This course also makes use of Log4J2 to teach you industry-standard log implementation in your application.
We will be using JUnit5, which is the latest version of JUnit, for implementing Unit Test Cases.
Example and Exercises
Working examples and exercises are the most critical tool to convert your knowledge into a skill. I have already included a lot of examples in the course. This course also consists of some programming assignments as and when appropriate. These exercises will help you validate and check your concepts and apply your learning to solve programming problems.