The Big Picture: Systems that survive scale and failure are built from a small set of patterns. This index collects them — for building real systems or interviewing for the job that does.


Why It Matters

Every system gets more traffic than planned, and every component eventually fails. Know the building blocks — load balancers, caching, sharding, replication — before the failure, not during it.

The Details

  • API & Web Protocols: REST, gRPC, polling, WebSockets, and browser rendering.
  • Database & Storage: RDBMS vs. NoSQL, caching strategies, replication, and indexing.
  • Infrastructure & DevOps: Cloud blueprints, proxy servers, networks, and containers.
  • System Architecture: Scaling strategies, microservices, and fault tolerance.

Go Deeper

Credit to ByteByteGo - YouTube Newsletter
[![ByteByteGoHq/system-design-101 Trendshift](https://trendshift.io/api/badge/repositories/3709)](https://trendshift.io/repositories/3709)

Explain complex systems using visuals and simple terms. Whether you’re preparing for a System Design Interview or you simply want to understand how systems work beneath the surface, we hope this repository will help you achieve that.

Filter the index

Resource Index

License

This work is licensed under CC BY-NC-ND 4.0.


The Bottom Line

System design is the art of trade-offs made explicit under real-world constraints. By mastering foundational building blocks — load balancing, caching, database replication, and fault tolerance — engineers can design resilient systems that scale reliably under production demand.