Design a Distributed Job Scheduler

Advanced · 26 min read · High-Level Design, Case Studies: Advanced

Scheduling at scale, leases, retries and exactly-once execution.

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

  • 1. Clarify the problem
  • 2. Requirements
  • 3. Capacity estimation
  • 4. API
  • 5. Data model
  • 6. High-level design
  • 7. Deep dives
  • 8. Failure modes
  • 9. Trade-offs summary
  • 10. What interviewers look for
  • Interview questions
  • Practice
  • Further reading

Previous: Design an Ad Click Aggregator · Next: Design a Collaborative Editor (Google Docs)