Build it
Stop reading about it. Build the thing.
Every project here is a real, working system you build from scratch - with the actual code, the decisions behind it, and the specific problems that only show up once you build it yourself instead of reading someone else’s summary.
Build a rate limiter
Stop one client from taking down your API for everyone else
A token-bucket rate limiter from scratch in Node.js - the same core idea behind every 'too many requests' response you've ever hit, built so you actually understand the trade-offs instead of just importing a library.
Build a URL shortener
The 'simple' system design interview question that isn't simple once you scale it
A working URL shortener - short code generation, redirects, and the collision and race-condition problems that only show up once more than one request hits the system at the same time.
Build a real-time chat server
What actually happens underneath every WebSocket-powered app
A minimal real-time chat server over WebSockets - connection state, broadcasting to a room, and what changes the moment you need more than one server process handling connections.