Catalogue
/
Software Engineering
/
Domain Driven Design Mastery

Domain Driven Design Mastery

A practical course for senior engineers who lead complex systems. The agenda blends strategic modeling with tactical patterns and shows how to evolve legacy code toward clear bounded contexts. You will align architecture with the domain and deliver change with less risk.

What will you learn?

You will model core domains using ubiquitous language and bounded contexts. You will design aggregates, domain services, and events that fit real workflows. You will connect contexts safely and guide teams through evolutionary change from monoliths to services.

  • Apply strategic DDD with bounded contexts and context maps
  • Design robust aggregates, entities, value objects, and domain services
  • Integrate contexts using anti corruption layers, sagas, and contracts
  • Evolve legacy systems with modularization, testing, and migration paths

Requirements:

  • Senior level experience building and operating production systems
  • Familiarity with modular architecture and messaging concepts

Course Outline*:

*We know each team has their own needs and specifications. That is why we can modify the training outline per need.

Module 1: Strategic DDD and problem framing

  • Ubiquitous language and core domain focus
  • Bounded contexts and team aligned boundaries
  • Context mapping partnership, customer supplier, conformist
  • Visual collaboration techniques quick event storming and domain canvases

Module 2: From domain narratives to models

  • Commands, policies, and events as storytelling tools
  • Capability slices and domain workflows
  • Discovering aggregates through invariants and transactional rules
  • Aligning models with outcomes and KPIs

Module 3: Tactical building blocks

  • Entities and value objects identity, equality, and immutability
  • Aggregates consistency boundaries and reference patterns
  • Domain services when behavior is not owned by an entity
  • Repositories intent revealing persistence and specs

Module 4: Architecture alignment

  • Hexagonal architecture ports, adapters, and application services
  • Application layer vs domain layer responsibilities
  • CQRS where it helps and where it does not
  • Event sourcing at a glance tradeoffs and readiness checks

Module 5: Integrating bounded contexts

  • Translation layers and anti corruption layer patterns
  • Published language and contracts for interoperability
  • Versioning strategies for APIs and messages
  • Context mapping to infrastructure choices

Module 6: Process orchestration

  • Sagas and process managers modeling long running flows
  • Consistency models eventual, transactional outbox, and idempotency
  • Handling duplicates, retries, and timeouts
  • Designing for failure and compensations

Module 7: Working with legacy systems

  • Domain discovery in a brownfield codebase
  • Modular monolith as a stepping stone
  • Strangler fig and routing techniques
  • Carving out first bounded contexts with minimal risk

Module 8: Data and reporting

  • Read models and projections for queries and analytics
  • Reporting across contexts without leaking invariants
  • Reference data and catalog domains
  • Data ownership and synchronization rules

Module 9: Testing the domain model

  • Example based specifications and scenario tests
  • Property based tests for invariants
  • Contract tests between contexts
  • Test data strategies for realistic scenarios

Module 10: Operational concerns

  • Observability by domain logs, metrics, and traces
  • Resilience patterns bulkheads, circuit breakers, and backpressure
  • Security boundaries and policies by context
  • Performance considerations in aggregate design

Module 11: Governance and team practices

  • Architecture decision records and model catalogs
  • Review rituals model walkthroughs and context map updates
  • Evolution rules deprecation, versioning, and migration guides
  • Aligning product roadmaps to domain change

Module 12: Roadmap to adoption

  • Assessing readiness and constraints
  • Selecting pilot slices and success criteria
  • Change management for developers and stakeholders
  • Building a shared language glossary and living documentation

Hands-on learning with expert instructors at your location for organizations.

0
Graph Icon - Education X Webflow Template
Level: 
Intermediate
Clock Icon - Education X Webflow Template
Duration: 
21
Hours (days:
3
Camera Icon - Education X Webflow Template
Training customized to your needs
Star Icon - Education X Webflow Template
Immersive hands-on experience in a dedicated setting
*Price can range depending on number of participants, change of outline, location etc.

Master new skills guided by experienced instructors from anywhere.

0
Graph Icon - Education X Webflow Template
Level: 
Intermediate
Clock Icon - Education X Webflow Template
Duration: 
21
Hours (days:
3
Camera Icon - Education X Webflow Template
Training customized to your needs
Star Icon - Education X Webflow Template
Reduced training costs
*Price can range depending on number of participants, change of outline, location etc.

You can participate in a Public Course with people from other organisations.

0

/per trainee

Number of Participants

1 Participant

Thanks for the numbers, they could be going to your emails. But they're going to mine... Thanks ;D
Oops! Something went wrong while submitting the form.
Graph Icon - Education X Webflow Template
Level: 
Intermediate
Clock Icon - Education X Webflow Template
Duration: 
21
Hours (days:
3
Camera Icon - Education X Webflow Template
Fits ideally for individuals and small groups
Star Icon - Education X Webflow Template
Networking opportunities with fellow participants.
*Price can range depending on number of participants, change of outline, location etc.