Event-driven architecture reference patterns for scale
Choreography vs orchestration, schema evolution and the observability tax nobody budgets for.
Architecture · 22 Jul 2025 · 10 min read
Infoogle Engineering · Engineering team
Event-driven architecture promises loose coupling and scale, but it trades synchronous simplicity for a different kind of complexity — one that shows up in debugging, schema management and organizational ownership rather than in the code itself.
Choreography vs orchestration
Choreography — services reacting independently to events — scales organizationally but makes end-to-end business processes hard to trace. Orchestration — a central process manager driving the workflow — sacrifices some autonomy for a single, auditable source of process state. Most enterprises need both, applied deliberately: choreography for domain events, orchestration for critical business transactions.
Schema evolution discipline
- Treat event schemas as public APIs with backward-compatibility guarantees.
- Use a schema registry to reject breaking changes at publish time, not at consumer failure time.
- Version events explicitly and deprecate old versions on a published timeline.
The observability tax
Distributed tracing across an event mesh is non-negotiable once you exceed a handful of services. Correlate every event with a trace ID from the moment it is produced, and invest in a queryable event log before you need it during a production incident at 3am.
Loose coupling at the code level often means tight coupling at the debugging level — plan for it.
Get the sequencing right — start with a small number of well-governed event types, add tracing from day one, and expand the mesh only as fast as your observability tooling can keep pace.