Fundamentals System Designs

Worked Fundamentals system design walkthroughs: the requirements, the trade-offs, real numbers and the component choices behind each design.

Browse all system designs

  1. A Step-by-Step Framework for Approaching Any System Design Interview

    A repeatable, structured framework for cracking system design interviews: from clarifying requirements to discussing trade-offs, with real numbers and concrete component choices.

    Fundamentals · beginner · 12 min read

  2. Availability Patterns: Active-Passive Failover, Active-Active, and Replication

    A deep dive into the three core availability patterns—active-passive failover, active-active, and replication—with real trade-offs, failure modes, and interview-ready talking points.

    Fundamentals · intermediate · 12 min read

  3. Availability, Reliability, Failover and Fault Tolerance

    A ground-up guide to building systems that stay up: SLAs, redundancy patterns, failover mechanics, and the real trade-offs between availability and consistency.

    Fundamentals · beginner · 12 min read

  4. Back-of-the-Envelope Estimation: QPS, Storage, Bandwidth, and Memory Sizing

    Learn how to estimate queries per second, storage, bandwidth, and memory for any system—turning vague requirements into concrete capacity numbers before writing a single line of code.

    Fundamentals · beginner · 12 min read

  5. Batch vs Stream Processing

    A deep comparison of batch and stream processing architectures: when to use each, how to build them, and how Lambda and Kappa architectures unify both.

    Fundamentals · intermediate · 12 min read

  6. Concurrency vs Parallelism in Backend Systems

    A precise, engineering-level breakdown of concurrency and parallelism models, when to use each, and how they map to real backend components like thread pools, event loops, and worker queues.

    Fundamentals · intermediate · 12 min read

  7. Consistency Models: Strong, Eventual, Causal, and Read-Your-Writes

    A deep-dive into the four consistency models every distributed systems engineer must know, with real trade-offs, failure modes, and interview talking points.

    Fundamentals · intermediate · 12 min read

  8. Idempotency: Designing Safe Retries for APIs and Workers

    Learn how to make APIs and background workers safe to retry by applying idempotency keys, deduplication stores, and atomic state transitions — with concrete patterns and real trade-offs.

    Fundamentals · intermediate · 12 min read

  9. Latency vs Throughput vs Bandwidth

    Understand the three core performance dimensions of any distributed system—latency, throughput, and bandwidth—and how to measure, tune, and trade them off in real architectures.

    Fundamentals · beginner · 12 min read

  10. Performance vs Scalability

    Understand the difference between making a system faster for one user and making it handle more users, and learn when to optimize each dimension.

    Fundamentals · beginner · 12 min read

  11. Push vs Pull Architectures

    A deep comparison of push and pull delivery models—covering when each wins, how to size queues, and the real failure modes that trip up production systems.

    Fundamentals · intermediate · 12 min read

  12. Scalability: Vertical vs Horizontal Scaling

    Understand when to scale up a single machine versus scale out across many, with real numbers, trade-offs, and patterns used in production systems.

    Fundamentals · beginner · 12 min read

  13. Stateful vs Stateless Design

    Understand when to keep state in a service vs. push it to external stores, with concrete patterns, failure modes, and scaling implications for real distributed systems.

    Fundamentals · beginner · 12 min read

  14. Synchronous vs Asynchronous Communication Between Services

    A deep-dive into when to use direct request-response calls versus message-driven patterns, with real latency numbers, failure modes, and trade-offs every distributed systems engineer must know.

    Fundamentals · beginner · 12 min read

  15. The CAP Theorem and PACELC in Practice

    Understand CAP and PACELC trade-offs with real database examples, failure scenarios, and the concrete decisions that shape every distributed system you build.

    Fundamentals · intermediate · 12 min read