High level design

System design, taught the way it is actually used. Every diagram on these pages is drawn by code rather than exported from a design tool, so it moves, it responds to what you drag, and it fits on your phone. Every page stops a few times and asks you to commit to an answer before it gives you one.

The pages are written for a specific moment: you have an interview in a few weeks, you have read a dozen blog posts, and you still cannot start from a blank whiteboard.

Start here

If you have two weeks, read them in this order. Back of the envelope math first, because every question after it opens with a number, and the rest of the round is a response to that number.

Building blocks

Design questions

Staff level

The questions that come up at senior and staff interviews, where the interesting part is not what the boxes are but which constraint decides the design.

India scale

Systems you use every day, at volumes most global case studies never have to handle.

What is coming

More building blocks: load balancing, indexes and storage engines, and failure handling with timeouts, retries and circuit breakers. More questions: search autocomplete, video, a proximity service, and a collaborative editor. And more of the India scale set, starting with a food delivery order flow.

IndGeek provides solutions in the software field, and is a hub for ultimate Tech Knowledge.