AI-powered learning
Save this course
System Design Deep Dive: Real-World Distributed Systems
Ready to become a System Design pro? Unlock the world’s largest distributed systems, including file systems, data processing systems, and databases from hyperscalers like Google, Meta, and Amazon.
4.5
158 Lessons
20h
Updated 3 months ago
Join 2.9 million developers at
Join 2.9 million developers at
LEARNING OBJECTIVES
- Working knowledge of building large-scale systems
- Ability to evaluate common system design trade-offs
- Ability to map interview questions and on-job design tasks to well-known systems
- Familiarity with the complexity of real-world systems behind a seemingly simple system
- Understanding of large cloud service providers hosted in geographically dispersed data centers
Learning Roadmap
3.
Google File System (GFS)
Google File System (GFS)
11 Lessons
11 Lessons
Examine the Google File System's design for scalability, performance, and fault tolerance in distributed environments.
4.
Google Colossus File System
Google Colossus File System
3 Lessons
3 Lessons
Break down the steps to Colossus's scalability, low-latency, and enhanced control in data management.
5.
Facebook's Tectonic File System
Facebook's Tectonic File System
8 Lessons
8 Lessons
Consolidate storage resources and ensure scalability, efficiency, and performance isolation in advanced systems.
7.
Google Bigtable
Google Bigtable
7 Lessons
7 Lessons
Piece together the parts of Google's Bigtable, focusing on its data model, architecture, and design refinements.
8.
Google Megastore
Google Megastore
6 Lessons
6 Lessons
Learn how to use Megastore for scalable, reliable, and ACID-compliant cloud storage.
9.
Google Spanner
Google Spanner
9 Lessons
9 Lessons
Look at Google Spanner’s unique combination of SQL consistency, NoSQL scalability, and global performance.
11.
Many-core Key-value Store
Many-core Key-value Store
5 Lessons
5 Lessons
Break down the steps to design an efficient, power-saving many-core key-value store system
12.
Scaling Memcache
Scaling Memcache
7 Lessons
7 Lessons
Solve problems in scaling Memcache, managing data replication, performance optimization, and consistency.
13.
SILT
SILT
12 Lessons
12 Lessons
Investigate optimizing key-value stores for efficient resource use, low latency, and scalability.
14.
Amazon DynamoDB
Amazon DynamoDB
8 Lessons
8 Lessons
Build on DynamoDB's scalability, flexible schemas, and robust high availability mechanisms.
16.
Two-phase Locking (2PL)
Two-phase Locking (2PL)
3 Lessons
3 Lessons
Unpack the core of Two-Phase Locking (2PL), ensuring serializability while addressing deadlocks and performance issues.
17.
Google Chubby Locking Service
Google Chubby Locking Service
8 Lessons
8 Lessons
Examine Chubby's innovative, robust design for distributed systems, enhancing fault tolerance, replication, and client coordination.
18.
ZooKeeper
ZooKeeper
5 Lessons
5 Lessons
Break down complex ideas of ZooKeeper's architecture, primitives, and performance in distributed systems.
20.
MapReduce
MapReduce
8 Lessons
8 Lessons
See how it works to streamline parallel data processing, fault tolerance, and scalability using MapReduce.
21.
Spark
Spark
10 Lessons
10 Lessons
Master the steps to leverage Spark's in-memory computation for scalable, low-latency data processing.
22.
Kafka
Kafka
8 Lessons
8 Lessons
Learn how to use Kafka for efficient, scalable, and reliable real-time data streaming.
24.
Understanding Consensus: Two Generals, FLP, & Byzantine Generals
Understanding Consensus: Two Generals, FLP, & Byzantine Generals
4 Lessons
4 Lessons
Examine consensus challenges in distributed systems, including the Two Generals, FLP, and Byzantine Generals problems.
25.
Two-phase Commit
Two-phase Commit
4 Lessons
4 Lessons
Grasp the fundamentals of the Two-Phase Commit protocol for ensuring distributed transaction consistency.
26.
State Machine Replication
State Machine Replication
10 Lessons
10 Lessons
Take a closer look at replicating state machines for fault tolerance, coordinated requests, and fault-tolerant outputs.
27.
Paxos
Paxos
6 Lessons
6 Lessons
See how Paxos maintains consensus in distributed systems, addressing safety, liveness, and fault tolerance.
28.
Raft
Raft
8 Lessons
8 Lessons
Piece together the parts of the Raft algorithm, ensuring consistent, reliable distributed systems.
Certificate of Completion
Showcase your accomplishment by sharing your certificate of completion.
Complete more lessons to unlock your certificate
Developed by MAANG Engineers
ABOUT THIS COURSE
This course deep dives into how large, real-world systems are built and operated to meet strict service-level agreements. You’ll learn the building blocks of a modern system design by picking and combining the right pieces and understanding their trade-offs.
You’ll learn about some great systems from hyperscalers such as Google, Facebook, and Amazon. This course has hand-picked seminal work in system design that has stood the test of time and is grounded on strong principles. You will learn all these principles and see them in action in real-world systems.
After taking this course, you will be able to solve various system design interview problems. You will have a deeper knowledge of an outage of your favorite app and will be able to understand their event post-mortem reports. This course will set your system design standards so that you can emulate similar success in your endeavors.
ABOUT THE AUTHOR
Fahim ul Haq
Software Engineer, Distributed Storage at Meta and Microsoft, Educative (Co-founder & CEO)
Trusted by 2.9 million developers working at companies
D
Desh S
Huawei Technologies
S
Sumit S
Learner
J
Jayanth H
Learner
D
Desh S
Huawei Technologies
Built for 10x Developers
No Passive Learning
Learn by building with project-based lessons and in-browser code editor


Personalized Roadmaps
The platform adapts to your strengths & skills gaps as you go


Future-proof Your Career
Get hands-on with in-demand skills


AI Code Mentor
Write better code with AI feedback, smart debugging, and "Ask AI"




MAANG+ Interview Prep
AI Mock Interviews simulate every technical loop at top companies


Free Resources
cheatsheet
cheatsheet
cheatsheet
blog
guide