Please log in to watch this conference skillscast.
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 coupling! Extracting the customer-facing core processes of companies into dedicated, long-running services allow to keep sight of larger-scale flows, without violating bounded contexts or introducing god services!
In this talk, Martin explores strategic design in the light of understanding the long-running nature of delivering many real-life business capabilities. But 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 state machines and process engines assist in this endeavour. Expect real-life experience and many examples!
YOU MAY ALSO LIKE:
Know the Flow! Events, Commands and Long-Running Services
For over a decade Martin has been working in complex domains like energy trading, health care or wind tunnel organization. As a coder, he has a soft spot for readable and testable APIs and enjoys to design services around long-running capabilities. As a "domain decoder", he is into Domain-Driven Design and with Storystorming he now integrates methods which shift the focus from technology to the user value of what we do. Martin blogs at https://medium.com/plexiti and publishes in magazines like InfoQ and OBJEKTspektrum, a well-read german periodical for which he is an editorial member. In his hometown Vienna he organises meetups around Domain-Driven Design, Microservices, Reactive and Distributed Systems. Martin is a contributor to several projects on GitHub and a trainer with experience in 50+ companies and 10+ countries. He regularly speaks at meetups and conferences across Europe - and from time to time in the US.