Compiled Conversations

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

Jul 30, 2025
James Eastham, a software developer and expert in event-driven architecture, dives into the nitty-gritty of building and maintaining event-driven systems. He distinguishes between choreography and orchestration with engaging analogies, reveals strategies for failure recovery, and discusses the nuances of handling sensitive data. James also explores observability with OpenTelemetry, practical migration from monoliths, and the importance of structured learning through teaching. His insights shed light on overcoming challenges in implementing EDA while emphasizing hands-on experiences.
Ask episode
AI Snips
Chapters
Transcript
Episode notes
ADVICE

When To Orchestrate Workflows

  • Use orchestration when a central controller must enforce workflow steps and timeouts.
  • Keep orchestration internal to a service and still publish events asynchronously where useful.
INSIGHT

Let Failures Be Business Events

  • In choreographed systems, failures should emit business events that trigger compensating actions.
  • You can react to a 'kitchen failed' event to cancel orders without a central orchestrator.
ADVICE

Prefer Polling For Predictable Tasks

  • Choose polling for predictable backend durations and use WebSockets only when real-time push is required.
  • Prefer the simpler approach unless the business needs low-latency bidirectional updates.
Get the Snipd Podcast app to discover more snips from this episode
Get the app