Distributed systems concepts, real-world tools, and end-to-end design walkthroughs — the material that shows up in design interviews and on the job.

4 articles Beginner → Advanced

Concepts

The foundational ideas every distributed system is built on.

View all
  1. Caching: The Layer that Saves Your Database

    Cache-aside, write-through, write-behind, and read-through patterns. Eviction policies. What makes a cache coherent and when to accept stale reads.

  2. Numbers First: How Constraints Drive System Design

    The numbers — latency, throughput, storage — are not outputs of system design. They are the inputs. Always establish constraints before touching architecture.

  3. CAP Theorem: The Trade-off Every Distributed System Makes

    Why a distributed system can only guarantee two of three properties — consistency, availability, and partition tolerance — and how this shapes every architecture decision.

Tools

Building blocks for real-world distributed systems.

View all
  1. Dynamo: Amazon's Key-Value Store That Never Goes Down

    Dynamo trades consistency for availability deliberately. Here's why, and the full technical picture that makes it work.

Deep Dives

End-to-end system design walkthroughs, from the bare basics to case studies.

View all

No deep dives published yet.

Reads

Papers, articles, and books — with short notes on what stuck.

View all
  1. Dynamo: Amazon's Highly Available Key-value Store

    The paper that legitimized eventual consistency as a serious engineering trade-off, not a failure mode. Consistent hashing, vector clocks, sloppy quorums, and anti-entropy are assembled into a coherent philosophy — prioritize availability over consistency when users feel the difference, and push conflict resolution to the application layer where it belongs.