Getting started with Event-Driven Architecture is easy: a producer system publishes an event to a queue, stream, or bus, and one or more consumers read the event and process it. Add more producers, add more consumers, rinse and repeat. But at some point, your data model changes, a producer application is retired, or a consumer requires additional data. At this point your event-driven architecture needs to evolve, and in an organically grown EDA, this will hurt.
In this talk we will present 10 simple rules to make your events more maintainable, predictable, and evolvable. These simple rules will create harmony in your systems, which will prevent operational incidents, ease refactoring, and allow for painless expansion of your application landscape.