System Design Concepts Course and Interview Prep
By freeCodeCamp.org
Published: Jul 25, 2024
This complete system design tutorial covers scalability, reliability, data handling, and high-level architecture with clear explanations, real-world examples, and practical strategies. You will learn the core concepts you need to know for a system designs interview.
?? Course developed by @hayk.simonyan
?? Contents ??
?? (00:00) Introduction
?? (00:39) Computer Architecture (Disk Storage, RAM, Cache, CPU)
?? (04:22) Production App Architecture (CI/CD, Load Balancers, Logging & Monitoring)
?? (07:12) Design Requirements (CAP Theorem, Throughput, Latency, SLOs and SLAs)
?? (14:40) Networking (TCP, UDP, DNS, IP Addresses & IP Headers)
?? (19:03) Application Layer Protocols (HTTP, WebSockets, WebRTC, MQTT, etc)
?? (24:01) API Design
?? (29:19) Caching and CDNs
?? (36:33) Proxy Servers (Forward/Reverse Proxies)
?? (42:36) Load Balancers
?? (48:05) Databases (Sharding, Replication, ACID, Vertical & Horizontal Scaling)???? Thanks to our Champion and Sponsor supporters:
???? davthecoder
???? jedi-or-sith
???? ????
???? Agustín Kussrow
???? Nattira Maneerat
???? Heather Wcislo
???? Serhiy Kalinets
???? Justin Hual
???? Otis Morgan
???? Oscar Rahnama—
Learn to code for free and get a developer job: https://www.freecodecamp.org
Read hundreds of articles on programming: https://freecodecamp.org/news