Skip to content

Roadmap

This is the full plan: every topic the site will cover, grouped by track and in reading order within each track. Titles that are links are published; the rest are on the way. The list is generated from the same curriculum file the site is built from, so it is always current.

Something missing that you would like explained? See how to suggest a topic.

11of 137 topics published, across 14 tracks

01 Foundations

2 published · 3 planned

  1. What Happens When You Type a URLPublished
  2. Back-of-the-envelope estimationPlanned
  3. Latency vs ThroughputPublished
  4. Percentiles, P99 and tail latencyPlanned
  5. Monolith vs microservicesPlanned

02 Networking & APIs

4 published · 9 planned

  1. DNSPublished
  2. TCP vs UDPPublished
  3. TLS and Encryption in TransitPublished
  4. HTTP/1.1 → HTTP/2 → HTTP/3Planned
  5. REST API DesignPublished
  6. API versioningPlanned
  7. PaginationPlanned
  8. gRPCPlanned
  9. Long pollingPlanned
  10. Server-Sent EventsPlanned
  11. WebSocketsPlanned
  12. WebhooksPlanned
  13. CORSPlanned

03 Traffic & edge

2 published · 5 planned

  1. Reverse proxiesPlanned
  2. Load BalancingPublished
  3. API gatewaysPlanned
  4. Reverse Proxy vs Load Balancer vs API GatewayPublished
  5. CDNs and edge cachingPlanned
  6. Service discoveryPlanned
  7. Consistent hashingPlanned

04 Databases

0 published · 15 planned

  1. SQL vs NoSQLPlanned
  2. ACID and isolation levelsPlanned
  3. Database indexing (scan vs seek)Planned
  4. Storage engines: B-trees vs LSM treesPlanned
  5. Write-ahead logPlanned
  6. Query optimizationPlanned
  7. N+1 queriesPlanned
  8. Connection poolingPlanned
  9. ReplicationPlanned
  10. Read replicasPlanned
  11. Partitioning and shardingPlanned
  12. Schema migrations and versioningPlanned
  13. Optimistic vs pessimistic lockingPlanned
  14. Race conditionsPlanned
  15. DeadlocksPlanned

05 Caching

1 published · 4 planned

  1. Caching StrategiesPublished
  2. Cache invalidationPlanned
  3. Cache stampede (thundering herd)Planned
  4. Hot keysPlanned
  5. Bloom filtersPlanned

06 Distributed systems

0 published · 14 planned

  1. CAP and PACELCPlanned
  2. Consistency modelsPlanned
  3. Eventual consistencyPlanned
  4. Network partitionsPlanned
  5. Clock skew and timePlanned
  6. Logical clocks: Lamport and vector clocksPlanned
  7. Unique ID generation (Snowflake and friends)Planned
  8. Leader electionPlanned
  9. Consensus with RaftPlanned
  10. QuorumsPlanned
  11. Gossip protocolsPlanned
  12. Distributed locksPlanned
  13. Distributed transactions and 2PCPlanned
  14. Saga patternPlanned

07 Messaging & async

0 published · 11 planned

  1. Message queuesPlanned
  2. Pub/SubPlanned
  3. Event-driven architecturePlanned
  4. Log-based messaging (Kafka)Planned
  5. Delivery semantics: at-most, at-least, exactly oncePlanned
  6. Idempotency keysUp next
  7. Transactional outboxPlanned
  8. CQRS and event sourcingPlanned
  9. Dead letter queuesPlanned
  10. BackpressurePlanned
  11. Cron jobs and job schedulingPlanned

08 Resilience

1 published · 11 planned

  1. TimeoutsPlanned
  2. Retries, exponential backoff and jitterPlanned
  3. Circuit breakersUp next
  4. BulkheadsPlanned
  5. Rate LimitingPublished
  6. Load sheddingPlanned
  7. Graceful degradationPlanned
  8. Health checks, liveness and readiness probesPlanned
  9. Failover and high availabilityPlanned
  10. Multi-region architecturePlanned
  11. Backups and disaster recovery (RPO/RTO)Planned
  12. Chaos engineeringPlanned

09 Security

0 published · 14 planned

  1. Authentication vs authorizationPlanned
  2. Storing passwords safelyPlanned
  3. Sessions vs tokensPlanned
  4. OAuth 2.0 and OpenID ConnectPlanned
  5. JWTs and key rotationPlanned
  6. IAM and least privilegePlanned
  7. Secrets managementPlanned
  8. Encryption at rest and key managementPlanned
  9. SQL injectionPlanned
  10. Cross-site scripting (XSS)Planned
  11. Cross-site request forgery (CSRF)Planned
  12. Server-side request forgery (SSRF)Planned
  13. Web application firewallsPlanned
  14. DDoS protectionPlanned

10 Performance & runtime

0 published · 8 planned

  1. Scaling up vs scaling outPlanned
  2. AutoscalingPlanned
  3. Concurrency and thread safetyPlanned
  4. Async I/O and event loopsPlanned
  5. Memory leaksPlanned
  6. Garbage collectionPlanned
  7. Serverless: cold starts and limitsPlanned
  8. Cloud cost optimizationPlanned

11 Delivery & infrastructure

0 published · 10 planned

  1. Docker and containersPlanned
  2. KubernetesPlanned
  3. Helm chartsPlanned
  4. CI/CDPlanned
  5. Build cachingPlanned
  6. Infrastructure as Code (with Terraform)Planned
  7. Feature flagsPlanned
  8. Deployment strategies: rolling, blue-green, canaryPlanned
  9. Rollbacks and roll-forwardPlanned
  10. Semantic versioning and dependency hellPlanned

12 Observability & operations

0 published · 8 planned

  1. Observability: the big picturePlanned
  2. LoggingPlanned
  3. Metrics and monitoringPlanned
  4. Distributed tracingPlanned
  5. AlertingPlanned
  6. SLIs, SLOs and error budgetsPlanned
  7. Incident response and on-callPlanned
  8. PostmortemsPlanned

13 AI-era systems

0 published · 6 planned

This track grows as new things are learned. Add to it with `/add-topic`.

  1. Model Context Protocol (MCP): the big picturePlanned
  2. MCP authorization: OAuth 2.1, DCR and CIMDPlanned
  3. Retrieval-augmented generation (RAG)Planned
  4. Vector databasesPlanned
  5. Semantic cachingPlanned
  6. LLM rate limits and token budgetsPlanned

14 Case studies

1 published · 8 planned

Each case study ties many concepts together and links back to their pages.

  1. Design a URL shortenerPlanned
  2. Design a rate limiter servicePlanned
  3. Design a notification systemPlanned
  4. Design a chat systemPlanned
  5. Design a news feed (fan-out)Planned
  6. Design a payment systemPlanned
  7. Design a distributed cachePlanned
  8. Design a web crawlerPlanned
  9. How IRCTC Tatkal Booking WorksPublished
Edit page

Last updated:

Senior Dev Notes

System design, explained like a mentor would.

Written by Uday. Every page is researched, reviewed by a human, and every code example was run before it was published.