A practical introduction to DDD, CQRS & Event Sourcing
summary
Shows a concrete mortgage application model: a MortgageApplication aggregate that enforces the invariant “all proofs must be signed” with optimistic concurrency via a version number. Writes become domain events stored in an event store (apply for mortgage, proof added, application approved) and reads are fast materialized views (Mongo/Elasticsearch) built by projectors that rebuild projections. Demonstrates auditability and time travel, blue‑green reprojection for schema changes, tradeoffs: eventual consistency lag, projector complexity, archiving/tombstoning and when CRUD would have been simpler.
AI-written summary · about
chapters (7)
- 0:00Introduction and motivation
- 7:02Domain-Driven Design basics
- 11:33CQRS and read/write separation
- 17:56Event Sourcing introduction
- 24:40When to use these patterns
- 33:33Handling projections and versions
- 43:17Q&A and closing
related talks
01h 07mAn Architecture with CQRS and Event Sourcing
50mMoving away from CRUD: DDD + CQRS
49mCQRS and Event Sourcing explained
29mApplying (D)DDD and CQ(R)S to Cloud Architectures
01h 25mBuilding microservices with event sourcing and CQRS
30mDomain-Driven Design + Command Query Responsibility Segregation + Event Sourcing
43mEvent Sourcing dealing with an eventful past
45mBuilding a C# Application from Scratch with CleanArchitecture, CQRS and Event Sourcing
