High level design, for interviews and for building things
Study System Design. Worked out.
You have a job, and a Senior or Staff interview somewhere in the next few weeks. An hour in the evening is about what you have got, so each article is one sitting: one system, walked the whole way.
Start with the URL ShortenerSee all articles
Free to read, no signup required.
Argued from the papers and the postmortems, not from blog posts.
Sources cited across the course include PostgreSQL, Apache Kafka, MySQL, Notion, Figma, Pinterest, Google, Meta, Netflix, AWS, Apple, OpenAI, Anthropic, Stripe, Microsoft, Cloudflare, Discord, X, Slack, GitHub.
- hit rate
- 99.0 %
- multiplier, 1 / (1 − h)
- 100x
- database normally
- 1,000 /s
- if the cache dies
- 100,000 /s
At 100,000 requests a second. Drag it: the multiplier is the whole argument, and it is one division.
- problem breakdownsProblem BreakdownsOne system, designed end to end, the way a 45 minute interview goes.
- core conceptsCore ConceptsThe building blocks behind the designs. Every answer is worked out, not just stated.
- patternsPatternsIdeas that come up again and again. Explained once, linked from every article that uses them.
Problem Breakdowns
3One system, designed end to end, the way a 45 minute interview goes.
Core Concepts
1The building blocks behind the designs. Every answer is worked out, not just stated.
Patterns
12Ideas that come up again and again. Explained once, linked from every article that uses them.
- 01Bijective ID GenerationAppears inURL Shortener
- 02Contention and Hot KeysAppears inDistributed Rate LimiterURL ShortenerWhatsApp and Chat Systems+1
- 03Approximate CountingAppears inDistributed Rate LimiterURL Shortener
- 04Graceful DegradationAppears inDistributed Rate LimiterWhatsApp and Chat SystemsCaching Strategies and Invalidation
- 05Read Your WritesAppears inURL Shortener
- 06Fanout on Write against Fanout on ReadAppears inWhatsApp and Chat Systems
- 07Idempotency KeysAppears inURL ShortenerWhatsApp and Chat Systems
- 08Working Set CachingAppears inURL ShortenerCaching Strategies and Invalidation
- 09Tiered StorageAppears inURL Shortener
- 10Backfill and ReprocessingAppears inURL Shortener
- 11Denylist Push against Cache PurgeAppears inURL ShortenerCaching Strategies and Invalidation
- 12Fencing and EpochsAppears inWhatsApp and Chat Systems
More coming soon.