Quality software design makes your team faster.
Domain-Driven Design stands out as software methodology. It tackles complexity at the local level (in the code), at the system level, and in between systems (integration). It's never design for the sake of design: by centring on the domain, DDD puts software to work for the business.
We've created the world's first complete DDD training program for engineers and engineering teams. During 22 weekly modules of 4 hours each, your team will grow skilled in Domain-Driven Design, as well as the practices & habits to make DDD work. In a mix of practical and theoretical sessions on test automation, collaboration, design patterns, refactoring, modelling, EventStorming, Context Mapping, and more, they'll be ready to tackle your organisation's future challenges.
Who is this for?
- Your scale-up is hiring engineers faster than you can train them.
- You're leading a new project, a modernization of an existing system, or a re-engineering effort, and you want your team to avoid the pitfalls that harmed the old systems.
- You're a freelance software engineer, looking to learn the practices to tackle more complex problems, and increase your impact at your clients.
The format of weekly half day sessions allows your organisation to keep working on deliverables, while gradually upskilling your teams.
We can help you figure out who in your team will benefit from this program or one of our other courses. Contact us.
The program is subject to change as we iterate over the contents.
Timezone: Europe, Amsterdam.
|Theme 1: Great Habits
|1. Pair & Ensemble Programming
|2. Test-Driven Development
|3. Refactoring Essentials
|4. Value Objects
|5. Practice session + Q&A
|Theme 2: DDD Locally
|6. Tactical Patterns (Entities, Repositories, Services)
|7. Design level EventStorming
|8. Modelling (Expressing EventStorming models in code)
|9. Tactical: Patterns for Business Rules and Processes
|10. Practice session + Q&A
|Theme 3: DDD at the System Level
|11. Understanding DDD (From Code to Design, Architecture, and Ubiquitous Language)
|12. Big Picture EventStorming (Method)
|13. Big Picture EventStorming (Interviewing Domain Experts, Heuristics, Facilitation)
|14. DDD in Legacy Systems
|15. Practice session + Q&A
|Theme 4: DDD Between Systems
|16. Thinking in Events
|17. Integration Patterns
|18. Splitting Monoliths
|19. Bounded Contexts
|20. The Bounded Context Canvas
|21. Bringing it all together
|22. Expert Q&A
- We use Zoom (or similar), Miro (virtual collaborative whiteboard).
- There are a healthy mix of theory and practical group exercises.
- Programming exercises are designed to teach concepts that universal to all Object-Oriented languages. Depending on the context, the exercises use pseudocode, or are available in a number of popular languages, or are designed to not require knowledge of the language used.
- There are collaborative domain discovery and modelling exercises.
- The number of participants per session is limited for exercises that require a lot of interaction with the instructors.
Thomas Coopman is the lead instructor for the first series, and some modules may be taught by other instructors. The course outline is designed by Mathias Verraes and Thomas Coopman.
The standard price is €6500 (+VAT) per participant.
We must charge 21% for both B2B and B2C purchases, according to Belgian tax law (art. 21, §3, 3° W.Btw).
We offer discounts for:
- Early Bird purchases
- Individuals who purchase out-of-pocket
- Group purchases
- Combo purchases with other workshops
Contact us to inquire about pricing options.
Why DDD Europe?
We have been leading engineering teams to apply DDD since 2009, and have been teaching DDD courses both publicly and privately since 2012. In 2016, we founded DDD Europe, and have since been the world's leading provider of a wide range of DDD and related courses. We are trusted by customers ranging from SMBs to organisations like Shopify, Danske Bank, and SAP. Since the start, our approach has involved lots of hands-on practice. We've always made sure to collect a lot of feedback from customers, and we make sure that it actually feeds back into our work.