Thinking in Events: Principles of Event-Driven Architecture, Part 2 with James Eastham

00:00 46:00

In Part 2 of our deep dive into event-driven architecture (EDA), James Eastham returns to explore the practical realities of building and maintaining event-driven systems. We go beyond principles and into implementation - from failure handling and orchestration vs. choreography, to observability, testing, security, and real-world migration strategies.

Topics include:

  • Choreography vs. orchestration: coordination strategies and trade-offs
  • Failure recovery and the saga pattern
  • Handling sensitive data in events (PII, encryption, audit)
  • Observability and distributed tracing with OpenTelemetry
  • Event versioning, schema evolution, and contract testing
  • Simple async frontend integration: polling vs. WebSockets
  • Migrating from a monolith using internal events and change data capture (CDC)
  • Testing flow vs. structure in EDA systems
  • The realities of documentation and schema visibility
  • How to get started with EDA - and why you don’t need microservices to do it

We wrap up with a candid look at how James learns best - by doing and by teaching - and why that matters in the fast-evolving world of distributed systems.

This is Part 2 of a 2-part series. In Part 1, we discussed the foundational principles of event-driven architecture - including types of coupling, asynchronous communication, event design, and the role of events in decoupling and scaling distributed systems.

Show Links