At the age of ten Martin fell in love with coding. And focused on it by studying business and law! It turned out to be awesome: for programming business software! All those energy traders, telecom people and wind tunnel experts he talked to formed a domain coder with now 15+ years of hands-on experience and a soft spot for lean saga managers and flow engines. Martin is a trainer with experience in 50+ companies and 10+ countries. He regularly speaks at meetups and conferences across the world.
Strategic design does not stop at defining boundaries around business capabilities - it should reach out for truly smart endpoints, emphasize autonomy and the need for more coarse-grained and asynchronous APIs. The long-running services behind such APIs feel responsible for their business and sort out most problems without leaking internal troubles and bothering their clients. While long-running services will leverage domain events for decoupling, they will often expose their core functions as commands - in order to minimise overall coupling! Extracting the customer-facing core processes of companies into dedicated, long-running services allows to keep sight of larger-scale flows - without violating bounded contexts or introducing god services. In this talk, Martin not only explores strategic design in the light of understanding the long-running nature of delivering many real-life business capabilities. He will also show the practical side of the equation: implementing long-running behaviour of services, requiring proper reactions on failures, timeouts and the compensating actions sagas are known for. A new generation of lightweight, embeddable and scalable saga managers and flow engines assist in that endeavour. Expect real-life experience and many examples!
Author of “Domain-Driven Design”
Discerner of the Code
Inventor of EventStorming
Passionate software craftsman
Mobile Developer & Mentor
Distributed Systems and Stuff
Event-Driven Model Enthusiast
Creator of Axon Framework
Student of Systems
Strategic Design Specialist
Principal Software Engineer
Emerging Human, Recovering Engineer
Better by Design, Excel by Build