The Runtime Theory

topic / system-design

System Design

Turn product requirements into a system with explicit trade-offs.

Design services by reasoning about workload, latency, availability, storage, caches, queues, load balancing, replication, consistency, and failure recovery.

9 articles · 4 videos · 6 traces · 4 request flows · 4 interviews · 27 total

Articles

system design

Circuit Breakers and Bulkhead Isolation

How to prevent a slow or failing dependency from taking down your entire system by isolating failures and failing fast.

8 min readRead
system design

Consensus: How Nodes Agree Despite Failures

Why distributed systems need consensus, how Raft uses terms and quorums to elect a leader, and when the cost is worth paying.

10 min readRead
system design

Databases: Storage, Indexing, and Replication

From write-ahead logs to B-trees, from leader-follower to read replicas — how databases persist, index, and copy your data.

11 min readRead
system design

Distributed Queues and Reliable Delivery

At-most-once, at-least-once, and exactly-once delivery semantics, dead-letter queues, and the cost of ordering in a queue.

8 min readRead
system design

How a Load Balancer Distributes Requests

Round-robin, least connections, IP hash, consistent hashing, and health checks — the mechanics behind every routing decision.

9 min readRead
system design

Latency, Throughput, and the Cost of Coordination

Every system design trade-off is ultimately a balance between doing work fast, doing work often, and paying the cost of making multiple components agree.

9 min readRead
system design

Shard Distribution with Consistent Hashing

How to split a keyspace across many machines so that adding or removing one server moves the minimum amount of data.

9 min readRead
system design

What Is a Software System?

A system is not a single program — it is components with boundaries, responsibilities, and failure modes. Learn how to see the box before you design inside it.

7 min readRead
system design

Design a System From Its Workload and Failure Modes

Turn user requirements into a data flow, capacity model, and failure-aware architecture before drawing infrastructure boxes.

8 min readRead

Request Flows

Videos

Traces

Interviews

Explore adjacent

New lessons by email

Get new explanations about system design and related systems in your inbox.

One technical dispatch per week. No noise.