Recurring Design Patterns

Advanced · 22 min read · High-Level Design, Revision

The ten problem shapes behind almost every design question, and the standard answers.

This is an Advanced lesson, part of Premium. What it covers:

  • The ten patterns at a glance
  • 1. Scaling reads
  • 2. Scaling writes
  • 3. Contention on shared resources
  • 4. Real-time updates
  • 5. Long-running and asynchronous work
  • 6. Large blobs
  • 7. Fan-out
  • 8. Multi-step consistency across services
  • 9. Search and proximity
  • 10. Counting and aggregation
  • Cross-cutting checklist for any design
  • Interview questions
  • Practice
  • Further reading

Previous: Design a Stock Exchange · Next: HLD Cheat Sheet