Overview
Dive into a comprehensive 54-minute tutorial on system design concepts and interview preparation. Explore essential topics including computer architecture, production app infrastructure, design requirements, networking protocols, API design, caching strategies, proxy servers, load balancing, and database scaling techniques. Gain practical insights through clear explanations and real-world examples to enhance your understanding of scalability, reliability, and high-level architecture. Access accompanying presentation slides for further study and prepare effectively for system design interviews with this informative guide.
Syllabus
⌨️ Introduction
⌨️ Computer Architecture Disk Storage, RAM, Cache, CPU
⌨️ Production App Architecture CI/CD, Load Balancers, Logging & Monitoring
⌨️ Design Requirements CAP Theorem, Throughput, Latency, SLOs and SLAs
⌨️ Networking TCP, UDP, DNS, IP Addresses & IP Headers
⌨️ Application Layer Protocols HTTP, WebSockets, WebRTC, MQTT, etc
⌨️ API Design
⌨️ Caching and CDNs
⌨️ Proxy Servers Forward/Reverse Proxies
⌨️ Load Balancers
⌨️ Databases Sharding, Replication, ACID, Vertical & Horizontal Scaling
Taught by
freeCodeCamp.org