0845 450 6120

CQRS, Domain Events, Event Sourcing and how to apply DDD

Greg Young's CQRS, Domain Events, Event Sourcing and how to apply DDD (delivered by Russ Miles)

About the Expert

Russ Miles

Russ Miles is CEO of ChaosIQ.io where he and his team build commercial and open source (ChaosToolkit.org) products and provide services to companies applying Chaos Engineering to build confidence in their Cloud Native, Microservice-based systems on Pivotal Cloud Foundry, Kubernetes and more.

About the Author

Greg Young

Greg Young coined the term "CQRS" (Command Query Responsibility Segregation) and it was instantly picked up by the community who have elaborated upon it ever since.

The largest problem many run into with Domain Driven Design is in getting the abstract concepts implemented in a concrete way. Many of the stereotypical architectures people use actually make it impossible to apply DDD.

This CQRS course will help you avoid this. You will learn all about Command Query Responsibility Separation (CQRS), Domain Events, Event Sourcing and how to effectively apply DDD within an organisation.


If you are an Architect or Senior Developer with a strong interest in Domain Driven Design and in particular how to use Command Query Responsibility Separation (CQRS), Domain Events and Event Sourcing, then Greg Young's course is for you!



Bring your own hardware

To participate in this CQRS course, you are required to bring your own laptop, so you can develop with your own tools and languages, rather than something you are not familiar with.

Course Content

Day 1

  • Domain Driven Design Review

Day 2

  • Introduction/Outline
  • User intention and why it is important 
    • Exercise: Building a task based UI
  • Command and Query Separation
  • Introduction to events as a storage mechanism
    • Exercise: Creating an event storage system
  • Performance optimizations, snapshots
  • Creation of an aggregate root that tracks its own state
  • Conext Specifications to capture intent
  • How events change testing strategies

Day 3

  • The Read System
  • Partitionability of work, developer specialization, and outsourcing
  • Eventual Consistency
  • Organizational Sagas and the Ubiquitous Integration Language
  • Versioning of the event log over long periods of time
  • Pub/Sub and building disconnected systems



To get the most out of this course, you are advised to read Eric Evans' book on Tackling Complexity in the Heart of Software

One Month
Two Months
Three Months
More than Three Months
PRINCE2 Foundation & Practitioner
MSP Foundation & Practitioner
APMP Certificate
ITIL Foundation
Scrum in One Day
Certified ScrumMaster
ISTQB Software Test Foundation
Microsoft Project
BCS Business Analysis Practice
Other - Please Specify Below

Our Customers Include