The Engineering Room with Dave Farley

The 3 Golden Rules Of Distributed Systems | Sam Newman In The Engineering Room Ep. 40

71 snips
Oct 12, 2025
Sam Newman, an expert in microservices and resilient distributed systems, chats about how to approach architectural decisions in software development. He emphasizes the importance of starting simply before scaling to microservices. The conversation dives into his three golden rules for distributed systems, focusing on time, targets, and resource limitations. They explore practical strategies like timeouts and retries, while also addressing the impact of AI on coding practices and the importance of maintaining learning opportunities for junior developers.
Ask episode
AI Snips
Chapters
Books
Transcript
Episode notes
ADVICE

Hedge By Modularizing Data Early

  • Hedge future distribution by keeping transactional data modular early where feasible.
  • Separate data modules while deploying together to make later splits easier.
ANECDOTE

LMAX Interface-Based Messaging Success

  • Dave described LMAX's interface-based system that generated messages and used fast pub/sub.
  • The model made distributed boundaries explicit and produced the nicest distributed system he worked on.
INSIGHT

Be Honest About Network Boundaries

  • Abstractions must either make network boundaries explicit or they dangerously hide them.
  • Hiding network boundaries leads developers to write code that blows up when distributed.
Get the Snipd Podcast app to discover more snips from this episode
Get the app