​Essential Domain-Driven Design
Virtual Workshop

The team-focused Essential DDD workshop is geared towards development team members looking to apply DDD at a tactical level on their project work. It is an introductory level workshop to introduce you to the foundational aspects and techniques of domain-driven design so you can start applying them right away in your everyday development work. It is intended to provide the fundamentals necessary for the Strategic DDD workshop.


Session 1 - Collaborative Modeling

  • Explain the importance of domain modeling for complex domains

  • Describe two types of complexity and their differences

  • Identify areas your team would benefit from intentionally growing your shared language

  • List current domain modeling techniques your team currently uses

  • Use EventStorming to collaboratively discover a business process

Session 2 - Modeling in Code

  • Recognize problems surfaced by vague intentions in code cause by implicit or missing domain concepts

  • Participate in mob programming to express an implicit domain concept explicitly in code

  • Apply three key building block patterns for expressive domain modeling in code (i.e. values, entities, domain events)

  • Explain the role of domain events in decoupling and scaling

Session 3 - Supple Design

  • Explain the role of domain modules in organizing code according to related domain concepts

  • Practice modularizing domain concepts

  • Describe connascence of name as a type of semantic coupling

  • Describe the connection between connascence and context boundaries

  • List the goals for identifying and managing context boundaries

  • Identify key reasons for embracing multiple models


Who Should Attend

Anybody who works in software teams or with software teams will be able to fully participate in this workshop and take away concrete skills they can apply in real working situations. This includes software developers, architects, testers/QA, DevOps/DevSecOps, Product managers/owners, BAs, delivery managers, engineering managers and directors, and CTOs.


Virtual Format

  • Three instructor-led interactive 3-hour online class sessions

  • Live instruction using Zoom and Miro (collaborative online whiteboard) in each session

  • Hands-on practice during each session

  • Practical homework for you to practice in your own context between sessions and share your learning with your fellow participants

  • Maximum of 20 attendees


"This training connects the dots of the core concepts of DDD with a good mix of theory, experience & hands-on learning. It allowed me to find what the next step should be in my learning and applying to my DDD journey."

"Immersive. Understandable. Awesome! Paul has an excellent grasp of the concepts he teaches, and his techniques really help cement what is taught in your mind. He's an excellent communicator. I really enjoyed the way you taught this class."

"Fun, interesting, applicable!"