Back to Interview Hub

System Design Notes

High-level architecture, scalability, caching, and microservices.

System Design Basics

System design is the process of defining the architecture, components, modules, interfaces, and data for a system to satisfy specified requirements.

Key Concepts

  • Scalability: The capability of a system to handle a growing amount of work. (Horizontal vs Vertical scaling).
  • Latency vs Throughput: Latency is the time to perform some action. Throughput is the number of such actions executed per unit of time.
  • CAP Theorem: Consistency, Availability, Partition Tolerance.
  • Load Balancing: Distributing traffic across multiple servers.
  • Caching: Storing frequently accessed data in memory (Redis, Memcached).