Loading lesson path
A system-design path for requirements, capacity estimates, APIs, data models, caching, queues, reliability, observability, and scale tradeoffs.
Chapter 1
The reusable primitives every design leans on: load balancing, caching, sharding, queues, consistency, and estimation.
Chapter 2
Design a service that turns long URLs into short links, redirects on access, and reports click counts.
Chapter 3
Design a home timeline (Twitter/Instagram style) that shows recent posts from accounts a user follows.
Chapter 4
Design a distributed rate limiter that caps how many requests a client (API key / IP) can make per time window.