Skip to content

Series · 12 parts

System Design Fundamentals

A practical path through the building blocks of scalable systems: load balancing, scaling, caching layers, replication and sharding, consistent hashing, consistency models, message queues, idempotency, rate limiting, service communication, and high availability — grounded in real production engineering, not just interview theory.

  1. Part 1
    The System Design Interview: A Senior Engineer's Framework — Aman Kumar Singh
  2. Part 2
    Load Balancing Explained: Layers, Algorithms, and Health Checks — Aman Kumar Singh
  3. Part 3
    Horizontal vs Vertical Scaling: When to Scale Out, When to Scale Up — Aman Kumar Singh
  4. Part 4
    Caching Layers Explained: From Browser to Database — Aman Kumar Singh
  5. Part 5
    Database Replication and Sharding: Scaling the Data Tier — Aman Kumar Singh
  6. Part 6
    Consistent Hashing Explained: Distributing Data Without the Reshuffle — Aman Kumar Singh
  7. Part 7
    The CAP Theorem and Consistency Models, Without the Folklore — Aman Kumar Singh
  8. Part 8
    Message Queues Explained: Async Work, Delivery, and Failure Modes — Aman Kumar Singh
  9. Part 9
    Idempotency and Exactly-Once: Making Retries Safe — Aman Kumar Singh
  10. Part 10
    Rate Limiting Algorithms: Fixed Window, Token Bucket, and More — Aman Kumar Singh
  11. Part 11
    API Gateways and Service Communication: REST, gRPC, and Events — Aman Kumar Singh
  12. Part 12
    Designing for High Availability: Redundancy, Failover, and RTO/RPO — Aman Kumar Singh