We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
Shifting Gears: From Events to Event-Driven • Ryan Cormack • GOTO 2024
Learn how to transform monolithic systems into event-driven architectures through incremental changes, cross-team alignment, and proven patterns. Practical insights for successful migrations.
-
Event-driven architectures (EDAs) help build systems with low temporal coupling, allowing services to work independently without strict dependencies
-
Moving to event-driven requires more than just technical changes - it needs alignment across product, engineering and business teams through shared understanding and communication
-
Start small with “minimum viable migrations” - identify bounded contexts and make incremental changes rather than big bang transformations
-
Events should represent business facts and state changes, not internal implementation details or database schema changes. Events are a contract and should not have breaking changes
-
Use event storming workshops with cross-functional teams to model business processes and identify event boundaries and patterns
-
The cloud provides many managed services that help build event-driven systems cost-effectively, with pay-per-use pricing and built-in scalability
-
Build isolated systems that can evolve independently - new features should be able to consume events without impacting existing core services
-
Focus on asynchronous communication patterns and queue-based architectures to handle failure scenarios gracefully
-
Implement proper monitoring, observability and documentation around events to build trust and understanding across teams
-
Share knowledge and patterns across teams but allow independent implementation within bounded contexts - empower teams while maintaining consistency
-
Consider cost and reliability as key features - design systems to only run and scale when needed while maintaining resilience
-
Events can have multiple consumers but producers shouldn’t need to know about them - this enables flexible system evolution