Scale, don't guess
System Design
Engineer
Roadmap
From "what happens when you type a URL" to designing systems that serve a billion requests a day in 2026. Scalability, databases, caching, distributed systems, and HLD interviews — everything you need with free YouTube resources for every phase.
"Anyone can write code that works for 100 users. The engineer who can design for 100
million — and explain the trade-offs on a whiteboard — is the one who gets promoted, not
just hired."
— The Boring Education Team
6–12
Months to interview-ready
10
Phases to master
40+
Free YT resources
∞
Career ceiling
theboringeducation.com · Free Tech Education for
Everyone
01
Foundation Layer
Start Here — Networking, Client-Server & APIs
1
Weeks 1–4
Phase 01 · Networking & Client-Server Basics
What Actually Happens When You Hit Enter
Every system design conversation starts with the request path.
Understand DNS resolution, TCP/IP, HTTP/HTTPS, TLS handshakes, and
the client-server model deeply. Learn how load balancers,
reverse proxies, and CDNs sit in that path. Study
the difference between latency and throughput, and why every design
decision is really a trade-off between the two. This is the vocabulary every other
phase depends on.
Non-negotiable
DNS & TCP/IP
HTTP/HTTPS & TLS
Load balancers
Reverse proxies
CDNs
Latency vs throughput
2
Weeks 3–7
Phase 02 · APIs & Communication Protocols
REST, GraphQL, gRPC & How Services Talk
Every distributed system is a set of services agreeing on how to
talk to each other. Master REST API design: resources, status
codes, idempotency, pagination, versioning. Learn GraphQL for
flexible client queries and gRPC for fast internal
service-to-service calls using Protocol Buffers. Understand
WebSockets and Server-Sent Events for real-time
communication. Know when to pick sync request/response versus async messaging —
this decision shapes your entire architecture.
Core knowledge
REST API design
GraphQL
gRPC & Protobuf
WebSockets
Server-Sent Events
API versioning
3
Weeks 5–10
Phase 03 · Databases — SQL & NoSQL
Databases — Where Every Design Actually Lives or Dies
Most system design interviews hinge on the data model. Master
relational databases: normalization, indexing, query
optimization, ACID transactions, joins at scale. Learn NoSQL
categories — document stores (MongoDB), key-value (Redis, DynamoDB), wide-column
(Cassandra), and graph (Neo4j) — and when each fits. Understand
indexing strategies (B-tree, hash, composite) and how they trade
write speed for read speed. Know the SQL-vs-NoSQL decision cold; interviewers ask
for it constantly.
Daily reference
SQL & normalization
Indexing
ACID transactions
NoSQL (Mongo, Redis, Cassandra)
Query optimization
Schema design
🧠
Draw before you code. System design isn't about
memorizing architectures — it's about reasoning through trade-offs on a whiteboard. For
every concept you learn, sketch a boxes-and-arrows diagram from scratch and explain it
out loud, as if to an interviewer. That habit matters more than any single tool.
theboringeducation.com
02 / 07
Core Design Skills
Scalability, Caching & Database Scaling
4
Weeks 8–16
Phase 04 · Scalability Fundamentals
Scaling — From One Server to a Million Users
Scalability is the heart of system design. Master
vertical vs horizontal scaling and why horizontal wins at scale.
Learn load balancing algorithms (round robin, least connections,
consistent hashing) and how to keep services stateless so any
instance can serve any request. Study rate limiting (token
bucket, sliding window) to protect systems from overload. Understand
horizontal partitioning as the pattern behind almost every
large-scale design you'll be asked to whiteboard.
Industry standard
Horizontal scaling
Load balancing algorithms
Consistent hashing
Stateless services
Rate limiting
Auto-scaling
5
Weeks 12–20
Phase 05 · Caching & Database Scaling
Caching, Replication & Sharding — The Performance Toolkit
Caching is the fastest way to make a slow system feel instant.
Master Redis and Memcached for in-memory caching, cache
invalidation strategies (write-through, write-behind, cache-aside), and CDN edge
caching. On the database side, learn replication (leader-follower,
multi-leader) for read scaling and sharding/partitioning
(range-based, hash-based, geo-based) for write scaling. Understand
read replicas and connection pooling as the
first tools you reach for before rearchitecting anything.
Core design tool
Redis / Memcached
Cache invalidation
CDN caching
Database replication
Sharding & partitioning
Connection pooling
⚡
Cache first, shard later. Most systems never need
sharding — a well-placed cache and a couple of read replicas solve 90% of scaling problems
far more cheaply. Sharding adds real operational complexity (rebalancing, cross-shard
queries). Reach for it only when write throughput, not read throughput, is the actual
bottleneck.
System Design Specialization Tracks — Pick Your Path
| Track | Focus Area | Key Concepts | Companies Hiring |
|---|---|---|---|
| Backend / HLD Engineer | Service architecture, APIs, database design | Microservices, REST/gRPC, sharding | Product companies, fintech |
| Distributed Systems | Consensus, replication, fault tolerance | Raft/Paxos, CAP theorem, quorum | Infra teams, cloud providers |
| Data-Intensive Systems | Streaming, batch pipelines, analytics at scale | Kafka, Spark, Flink | Data platforms, ad-tech |
| Site Reliability (SRE) | Observability, SLOs, incident response | Prometheus, Grafana, chaos testing | Google, Uber, fintech |
theboringeducation.com
03 / 07
Distributed Systems Core
Messaging, Microservices & Consistency
6
Weeks 16–26
Phase 06 · Messaging & Async Systems
Queues, Pub/Sub & Event-Driven Architecture
Not everything needs an immediate response. Master
message queues (RabbitMQ, SQS) for decoupling producers from
consumers and pub/sub systems (Kafka, Google Pub/Sub) for
fan-out at scale. Understand event-driven architecture, event
sourcing, and the outbox pattern for reliable messaging alongside
database writes. Learn delivery guarantees — at-most-once, at-least-once,
exactly-once — and why "exactly-once" is mostly a marketing term. Async messaging
is what lets systems absorb traffic spikes gracefully.
Most in-demand 2026
Kafka
RabbitMQ / SQS
Pub/Sub patterns
Event sourcing
Outbox pattern
Delivery guarantees
7
Weeks 20–30
Phase 07 · Microservices & Distributed Consistency
Microservices, CAP Theorem & Consensus
Splitting a monolith into services introduces distributed
systems problems you didn't have before. Learn
microservices patterns: API gateways, service discovery, circuit
breakers, and the saga pattern for distributed transactions. Master the
CAP theorem and what it actually forces you to trade off. Study
consensus algorithms (Raft, Paxos) and how they underpin
leader election in distributed databases. Understand
eventual vs strong consistency — and how to explain, precisely,
which one a given feature needs.
Production-grade
Microservices patterns
API Gateway
Circuit breakers
CAP theorem
Raft / Paxos
Saga pattern
🧩
Don't reach for microservices by default. A well-built
monolith with clean module boundaries scales further than most teams think, and it avoids
distributed-transaction pain entirely. Split into services when a team or a workload
genuinely needs independent scaling or deployment — not because it looks more
"senior."
Consistency Model Comparison
| Model | Guarantee | Trade-off | When to Use |
|---|---|---|---|
| Strong Consistency | Every read sees the latest write | Higher latency, lower availability | Payments, inventory, banking |
| Eventual Consistency | Reads converge to latest write over time | Stale reads possible | Social feeds, view counts, likes |
| Causal Consistency | Related operations are seen in order | More complex to implement | Comment threads, chat apps |
| Read-Your-Writes | A user always sees their own updates | Needs session affinity or routing | Profile edits, settings pages |
theboringeducation.com
04 / 07
Reliability & Applied Design
Fault Tolerance, Observability & Case Studies
8
Month 6–9
Phase 08 · Reliability & Fault Tolerance
Designing for Failure — Because Everything Fails Eventually
At scale, hardware fails, networks partition, and services crash
— design for it, don't hope around it. Learn redundancy and failover
(active-active, active-passive), circuit breakers and retries with
backoff, and graceful degradation. Master
observability: metrics with Prometheus, structured logging, and
distributed tracing with OpenTelemetry to debug a request across a dozen services.
Study SLOs, SLAs, and error budgets — the language reliability
gets measured in.
SRE essential
Redundancy & failover
Circuit breakers
Retries & backoff
Prometheus & Grafana
Distributed tracing
SLOs / error budgets
9
Month 7–11
Phase 09 · Applied Case Studies
Design Real Systems — Not Just Theory
Theory only sticks once you've applied it end to end. Practice
designing well-known systems from scratch: a URL shortener, a
rate limiter, a chat application (WhatsApp-style),
a news feed (Twitter/Instagram-style), a ride-sharing
dispatch system (Uber-style), and a video streaming
platform (YouTube/Netflix-style). For each, work through requirements,
capacity estimation, high-level design, deep dives, and bottlenecks — the exact
structure interviewers expect.
High-yield practice
URL shortener
Rate limiter
Chat system design
News feed design
Ride-sharing design
Video streaming design
Essential System Design Patterns
🚦 API Gateway
A single entry point that handles routing, auth, rate
limiting, and request aggregation across microservices. Keeps client-facing concerns
out of individual services and gives you one place to enforce policy.
🗳️ Leader Election
Distributed nodes agree on a single coordinator using
algorithms like Raft or ZooKeeper's ZAB, so the system keeps functioning correctly
even when the current leader fails and a new one must be chosen.
🌸 Bloom Filters
A space-efficient probabilistic structure that answers
"definitely not present, or maybe present" in constant time — used to avoid expensive
cache misses and duplicate-check lookups at massive scale.
📐 CQRS & Event Sourcing
Separate the write model from the read model so each can
be optimized independently, and store state as a sequence of events rather than a
single mutable row. Powerful for audit trails and complex domains, overkill for simple
CRUD.
theboringeducation.com
05 / 07
Endgame
Mock Interviews, Estimation & Getting Hired
10
Month 8–12 (Interview Prep)
Phase 10 · Interview Ready
Capacity Estimation + Mock Interviews + HLD/LLD Practice
System design interviews test four things:
requirement clarification (functional vs non-functional,
asking the right questions first), capacity estimation
(back-of-envelope math for storage, bandwidth, and QPS), high-level
design (the boxes-and-arrows architecture), and
deep dives (defending one component under interviewer pressure).
Practice low-level design (LLD) too — class diagrams and design
patterns for a single service. Do at least 15 timed mock interviews before
real ones. Document 3–5 designs on GitHub with diagrams and trade-off write-ups.
Job-ready
Capacity estimation
HLD practice
LLD & design patterns
Mock interviews
Trade-off articulation
GitHub portfolio
Skill Map
What to Learn & When — Full Timeline
🟥 Month 1–3
Networking & HTTP/TCP
REST / GraphQL / gRPC
SQL fundamentals & indexing
NoSQL basics (Mongo, Redis)
Load balancers & CDNs
ACID transactions
Basic capacity math
🟧 Month 4–8
Horizontal scaling patterns
Caching strategies
Replication & sharding
Message queues & Kafka
CAP theorem & consistency
Microservices patterns
Consensus (Raft/Paxos)
🟩 Month 9–12
Fault tolerance & failover
Observability & SLOs
Case study designs (10+)
Low-level design patterns
Capacity estimation drills
Mock interviews (15+)
Portfolio & write-ups
Daily Routine
The Boring
System Design Routine That Works
Pick one concept and draw its architecture from memory, no
notes
1 hour hands-on: sketch a full HLD for one real-world system
Read one real engineering blog post (Uber Eng, Netflix Tech
Blog, Meta Eng)
Explain one trade-off out loud as if defending it to an
interviewer
Share one design or diagram you built on LinkedIn or Twitter
theboringeducation.com
06 / 07
Master Resource List
Best Free YouTube Channels for System Design
📺 Gaurav Sen
The channel most engineers cite as where system design
actually clicked for them. Clear, first-principles breakdowns of scalability,
sharding, consensus, and classic HLD interview questions. Start here if you're new
to the subject.
📺 ByteByteGo
Alex Xu's channel — the visual companion to the "System
Design Interview" book series. Beautifully animated explanations of caching, CDNs,
consistent hashing, and real production architectures at scale.
📺 Hussein Nasser
Deep, practical dives into databases, networking
internals, and backend engineering trade-offs. Goes further into "why" than most
channels — great once you've got the basics down and want real depth.
📺 Tech Dummies Narendra L
Detailed, whiteboard-style walkthroughs of classic
system design interview problems — chat systems, ride-sharing, feed ranking — built
from requirements to deep dives, the way an actual interview unfolds.
📺 freeCodeCamp
Full-length free courses covering system design
fundamentals, databases, Kafka, and distributed systems end to end. Comprehensive and
completely free, ideal for structured study over a weekend.
📺 Exponent
Real mock system design interviews with ex-FAANG
interviewers, plus breakdowns of what strong versus weak answers actually sound like.
The closest free thing to sitting in on a real interview.
Tools by TBE — Use These
DSA Yatra — Daily practice
Prep Yatra — Interview tracker
Tech Yatra — Learning roadmaps
Resume Yatra — ATS-ready resume
Shiksha — Free courses
YouFocus — Distraction-free YT
Interview Prep — Question banks
Community — Peer learning
Your System Design Journey Starts Now 🚀
Every large-scale system you use today started as a whiteboard sketch by
an engineer who once stared at a blank page too.
Consistency over 12 months beats raw talent every single time. Start today.
→
theboringeducation.com
Consistency over 12 months beats raw talent every single time. Start today.
Find Us Everywhere
© 2026 The Boring Education · Free Tech Education for Everyone
07 / 07