Advanced Katas

You have reached the highest level. You have completed the learning phases and we move on to the more complex katas. Remember that in the link of each Kata you will find an introduction and the details you need to be able to perform it. And remember: the best way to learn and improve is to practice. Ready to start? 

ORM: Kata to learn how to work with an ORM.
Iteration 1: Learn how to do the setup and the kata.
Iteration 2: Apply the repository pattern, ValueObjects, Enities...
Iteration 3: Apply the specification pattern.
Iteration 2: Try to think how you would do the same as that ORM and implement it.

Task list kata: Working on domain models and software design principles such as SOLID.

Coffee machine project: Work this kata incrementally iteratively and evolve the architecture into a clean hexagonal architecture. 
Iteration 1: Hexagonal - Optional use C4 to make designs on your system.
Iteration 2: Clean - Optional use Domain story telling to learn how your domain works.

Corporate Hotel Booking: Practice the outside-in approach, partners and services.

Conway's Game of Life: Event driven implementation
Iteration 1: Event driven implementation attempts to use Event Storming to design the events and understand how the system would work.

CQRS Booking: CQRS implementation.

Smart Fridge: Event Driven Implementation.

Refactoring Kata Lift Pass Pricing: Evolution to Hexadecimal.


  • How to conduct E2E testing
  • Testing strategy
  • How to refactor for different types of architectures
  • How to do TDD with an ORM
  • Hexagonal and Clean Architecture
  • Event Driven
  • CQRS
  • Tactical concepts of DDD
  • C4 Model
  • Domain Storytelling
  • Event Storming


Tell us about your challenges by clicking on the banner