Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Udemy

Microservices: Clean Architecture, DDD, SAGA, Outbox & Kafka

via Udemy

Overview

Learn Spring boot microservices with Clean and Hexagonal architectures, DDD, SAGA, Outbox, CQRS, Kafka, Kubernetes & GKE

What you'll learn:
  • Develop Microservices Architecture using Spring Boot and Kafka
  • Understand and Apply Clean Architecture
  • Understand and Apply Hexagonal Architecture
  • Understand and Apply Domain Driven Design(DDD)
  • Implement SAGA Architecture Pattern
  • Implement Outbox Architecture Pattern
  • Implement CQRS Architecture Pattern
  • Learn Kafka Architecture and Programming on Kafka
  • Learn using Kafka as the Event Store for Event-Driven Services
  • Learn Kubernetes basics & Run a local cluster using Docker desktop
  • Deploy microservices to local Kubernetes Cluster
  • Run Confluent Kafka on Kubernetes using cp-helm-charts
  • Run Postgres on Kubernetes
  • Learn Google Cloud and Google Kubernetes Engine(GKE)
  • Deploy microservices to Google Kubernetes Engine
  • Learn Change Data Capture(CDC) with Debezium and Kafka

Hi there! My name is AliGelenler. I'm here to help you learn microservices architecture while applying Clean and Hexagonal Architectures and using Domain Driven Design.

In this course, you will focus on architectural aspects of microservices architecture and use Clean & Hexagonal Architecture principles while developing each service. In the implementation of the domain layer you will also apply Domain Driven Design principles.

You can always use the latest versions for spring boot, and other dependencies in this course. Iwill be constantly updating the dependency version in the last section's lectures. You may check that to see the required code and configuration changes for updated versions. Also if you would like to use subtitles during the course, you can turn on the captions on videos as all lectures are updated with hand-written subtitles. You may choose among over 20 different languages. I suggest using subtitles to make it easier to follow the lectures.


  • Scott Knox: "As a working professional, I can already tell this is the holy grail of understanding modern architectures. If your company is struggling to grasp certain concepts, this course will help you help them. Thanks Ali for the excellent explanations!"

You will implement SAGA, Outbox and CQRSpatterns using the 4 Spring boot Java microservices that you will develop using Clean and Hexagonal architecture principles.


  • Nick Goupinets: "Great course - gives a deep-dive into microservice development experience with Spring Boot. As an added bonus shows how to deploy it with Kubernetes. At times it felt too detailed, sort of making it hard to see the forest behind the trees. Also Hex. architecture resulted in what looked like an over-engineered overall solution. With that said, Ali did a fantastic job explaining all of the design decisions with clear architecture diagrams that offset that complexity!"

You will also learn and use Apache Kafka as the event store, and use events to communicate between services, and to implement the architectural patterns.


  • Nischal Jadhav: "If u are looking to become an high level developer or an architect, then this is the best course.!"

The concepts that you will be learning and implementing are:

  • Spring boot microservices

  • Clean Architecture

  • Hexagonal Architecture

  • Domain Driven Design

  • Event-driven services using Apache Kafka

  • SAGA Architecture Pattern

  • Outbox Architecture Pattern

  • CQRS Architecture Pattern

  • Kubernetes on local using Docker desktop

  • Kubernetes on Google Cloud using Google Kubernetes Engine(GKE)


  • Ali Aminian: "I really like this course. Thanks Ali for complete description and professional coding. I really enjoy to participate this course."

To communicate with the data stores in microservices you will use Spring Data JPA for PostgreSQL, and Spring Kafka for Kafka.

You will be following a hands-on approach and developing a project from scratch. You will have 4 microservices that communicate using events with Kafka as the event store.


  • r j: "This is an amazing course. An architect from my team recommended this to me and he's implemented something similar but bigger in our company, the biggest retailer on the planet."

You will also have multiple choice quizzes in each section to check your progress throughout the course.


  • Arindam Majumdar: "This course helped me immensely to understand the Domain Driven Design approach on Microservices. Its so far the best hands on course I have come across in Udemy so far. Many thanks to Ali. Great job!! :)"

At the end of the course you will understand how to run an event-driven microservices architecture with Clean and Hexagonal Architecture principles and with Domain Driven Design concepts. You will use Spring boot and Java to develop the microservices. You will also learn implementing architectural microservices patterns such as SAGA, Outbox and CQRS. In the end you will be able to deploy your application to Kubernetes on Google Cloud using Google Kubernetes Engine.


  • Anurag tiwari: "Just started the course but i can already tell that this a good one Ali explains all the concepts like out box ,saga pattern so well. I would highly recommend this course for anyone who wants to take their knowledge about microservices to the next level using different patterns like hexagonal ,saga pattern. I would also recommend this course for beginners as youll learn a ton of stuff regarding microservices and patterns to create agile services as this course is very hands on"

I have followed the same clean &hexagonal architectures and domain driven design principles in the implementation of each microservice. If you feel like you want to skip some repeating parts, you may download the source code that I provide in the first lecture of each section starting from section-3 or using the github links that I provided in the course resources. You can then use the provided source code to continue with the section.


  • Narendra Kumar A: "Its awesome course, I have ever come across in Udemy explaining the DDD, Clean architecture and usage of patterns concepts so cleanly."

For more detailed information on the progress of this course, you can check the introductory video and free lessons, and if you decide to enroll in this course, you are always welcome to ask and discuss the concepts and implementation details on Q/A and messages sections. I will guide you from start to finish to help you successfully complete the course and gain as much knowledge and experience as possible from this course.


  • Jason: "This course is one of the best I ever had. There are many microsevices courses on Udemy, and most of them are like something that manufactured in the same factory. They all used the same framework and followed the same steps to teach microservices. They never talked about the important concepts behind the microservice. I felt like they just wanted to show off the latest version of frameworks and finish the long courses with them quickly and get paid. The impression after I watched first this lesson was amazing. He actually starts the project with the bare bone java plain object. It was like I'm flying with feather, not fully armed with numerous buzzword frameworks. It might be frustrated at first if you are really new to microservices and never heard of concepts like DDD before. But I'm pretty sure this is one of the courses that make you a "better" developer."

Remember! There is a 30-day full money-back guarantee for this course! So you can safely press the 'Buy this course' button with zero risk and join this learning journey with me.

Taught by

Ali Gelenler and EA Algorithm

Reviews

4.5 rating at Udemy based on 2239 ratings

Start your review of Microservices: Clean Architecture, DDD, SAGA, Outbox & Kafka

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.