Sam Newman on Resilient Distributed Systems

Microservice tradeoffs, observability, retries and preserving understanding with AI.

SNSam Newman게스트
채널
The Pragmatic Engineer
게시일
2026년 10월 7일
영상
1:59:04
읽기
2분
원문
영어
YouTube에서 열기
스크롤하면 영상이 오른쪽 아래로 작아져 계속 재생됩니다. 자막은 읽기 언어를 따릅니다.
읽기 언어2개 언어로 읽을 수 있음
이 글은 아직 한국어 번역이 없어 영어 원문으로 표시합니다.
요약

30초 요약

Sam Newman discusses why distributed systems need observability and business-aware resilience choices, explains idempotency and overload, and considers how teams can use AI without losing a shared understanding of their architecture.

  1. 1MicroservicesIndependent deployment has benefits but distribution has costs.
  2. 2Three constraintsCommunication takes time, dependencies fail and resources are finite.
  3. 3ObservabilityConnect signals across components and user outcomes.
  4. 4IdempotencyIdempotent operations make repeated requests safer.
  5. 5OverloadRetries and recovery traffic can overwhelm limited capacity.
  6. 6Business contextFailure choices depend on business consequences.
  7. 7Cognitive debtTeams need shared understanding when using AI-generated code.

핵심 정리

  1. Independent deployment has benefits but distribution has costs.
  2. Communication takes time, dependencies fail and resources are finite.
  3. Connect signals across components and user outcomes.
  4. Idempotent operations make repeated requests safer.
  5. Retries and recovery traffic can overwhelm limited capacity.
  6. Failure choices depend on business consequences.
  7. Teams need shared understanding when using AI-generated code.
전문

챕터별로 다듬은 전문 읽기

원본 자막만 보기
01

Experience and microservices

Practices, independence and costs.

Gergely Orosz interviews author and architect Sam Newman about microservices, resilient distributed systems and AI-assisted development. Newman discusses his own book and experience; the episode has sponsors.

Newman recounts his time at Thoughtworks and the influence of extreme programming and test-driven development. He describes the practices as part of a longer evolution in software delivery.

The conversation traces the emergence of microservices. Newman emphasizes independent deployment and team autonomy, while cautioning that distributed services introduce operational costs and should not be the default for every problem.

They discuss whether specifications may become more prominent as agents write code. Newman treats the relationship among intent, implementation and verification as an evolving question rather than declaring code irrelevant.

02

Resilient systems

Constraints, signals and tradeoffs.

Newman introduces his work on resilience engineering and explains why ideas from other safety-critical fields can broaden software teams’ thinking about failure and recovery.

He reduces distributed-systems challenges to three constraints: communication takes time, a dependency can be unavailable, and resources are finite. Timeouts, failures and saturation can interact, such as when retries consume scarce connections.

Observability is the ability to understand system behavior from its outputs. In a distributed system, teams must connect signals across components and consider user-facing outcomes, not just individual service health.

Resilience is a matter of degree and involves cost. A stripped-down standby service can protect essential functions, but the right investment depends on the consequences of failure and the business context.

03

Retries and overload

Idempotency and thundering herds.

Idempotency helps with retries: repeating an operation should have the same intended effect as applying it once. Newman uses an elevator call button as an illustration and contrasts it with a toggle.

A thundering herd occurs when demand overwhelms available capacity. Recovery traffic, cache misses or synchronized retries can create self-inflicted overload; capacity and retry behavior must be designed together.

The team’s choice to fail open or closed depends on the business and the harm of each error. Newman argues that formal concepts are useful but cannot replace understanding the consequences for customers.

He discusses resilience as more than absorbing known disruptions: added robustness can itself increase complexity and create new failure modes. Teams also need to adapt and learn.

04

AI and shared understanding

Limits, cognitive debt and modularity.

Newman sees possible uses for AI in correlation and incident analysis, while expressing concerns about model limitations. His claims about how models reason are his interpretation, not a settled scientific conclusion.

He uses “cognitive debt” to describe a risk that a team loses its shared understanding when it delegates too much thinking. He recommends keeping people engaged with architectural boundaries and reviewing generated work.

Modular architecture can give AI tools bounded areas to work in while people focus on the relationships between modules. Newman frames this as a way to experiment without surrendering the system’s mental model.

The interview closes with learning resources and Newman’s book. He discloses personal relationships when recommending some authors.

같은 채널의 다른 글

1:41:17EN
The Pragmatic Engineer· 2026년 10월 28일팟캐스트 · 2명Titus Winters on Software Engineering, Teams and CS Education게스트 Titus Winters · 진행자 Gergely OroszA conversation on Google-scale refactoring, testing, AI and how engineers learn.Company BuildingLeadership
1:56:28EN
The Pragmatic Engineer· 2026년 10월 21일팟캐스트 · 2명Will Larson: The Revised Rules of Engineering Management게스트 Will Larson · 진행자 Gergely OroszThe 2010s taught engineering managers never to make a technical decision again. Will Larson, CTO of Imprint and author of Staff Engineer, argues that era is over: managers who cannot get back into the work are in a career trap.ManagementLeadershipCareer Growth+2
1:34:17EN
The Pragmatic Engineer· 2026년 10월 14일팟캐스트 · 2명Inside Uber’s Developer Infrastructure for AI Agents게스트 Uday Kiran Medisetty · 진행자 Gergely OroszUday Kiran Medisetty explains gateways, context, background coding and review.개발 워크플로와 테스트에이전트 엔지니어링인프라와 배포
29:39EN
The Pragmatic Engineer· 2026년 10월 6일팟캐스트The State of Software Engineering in 2026: What Changed and What Did NotGergely Orosz reports from AI labs, startups and large technology companies.Software engineering코딩 에이전트Developer productivity
1:42:31EN
The Pragmatic Engineer· 2026년 9월 30일팟캐스트 · 2명Peter Mattis on Distributed Databases and Coding with AI게스트 Peter Mattis · 진행자 Gergely OroszFrom Gmail and Colossus to CockroachDB, performance and agent-assisted engineering.Software engineering인프라와 배포코딩 에이전트
1:28:32EN
The Pragmatic Engineer· 2026년 9월 23일팟캐스트 · 2명Maggie Appleton on Design Engineering in the Age of Agents게스트 Maggie Appleton · 진행자 Gergely OroszSketches, live prototypes and human judgment in collaborative software design.제품과 UXSoftware engineering에이전트 엔지니어링