Skip to content

System Design Checklist

Introduction

  • System Design Interviews
  • Introduction
  • Abstractions
  • Non-functional system characteristics
  • Back-of-the-envelope calculations

Building Blocks

  • Introduction
  • DNS
  • Load balancers
  • Databases
  • Key-value store
  • CDN
  • Sequencer
  • Distributed monitoring
  • Monitoring server-side errors
  • Monitoring client-side errors
  • Distributed cache
  • Distributed messaging queue
  • Pub-sub system
  • Rate limiter
  • Blob store
  • Distributed search
  • Distributed logging
  • Distributed task scheduler
  • Sharded counters
  • Concluding building blocks

Design Problems

  • Design YouTube
  • Design Quora
  • Design Google Maps
  • Design Yelp
  • Design Uber
  • Design Twitter
  • Design Newsfeed system
  • Design Instagram
  • Design TinyURL
  • Design Web crawler
  • Design WhatsApp
  • Design Typeahead
  • Design Google Docs

Epilogue

  • Spectacular failures
  • Concluding remarks