System design interview questionHard
LinkedIn

Design Job Scheduler

Design a distributed job scheduler capable of handling recurring and one-time tasks at scale.

1. Problem Statement

We need to build a distributed job scheduler that can execute millions of cron jobs. How would you architect this?

2. Architecture Discussion Map

Use this as one discussion aid, not a single correct answer. Your design should follow from the requirements, scale, and trade-offs you establish.

Rendering architecture diagram...
Mermaid Source (For AI Bots)
graph LR
    A["Design Job Scheduler"]
    A --> F1["Work Ownership leases, leader election, or conditional claims"]
    A --> F2["Fault Tolerance Worker crashing mid-task"]
    A --> F3["Due-Work Discovery next-fire-time index, time buckets, or timing wheels"]
    A --> F4["Delivery Semantics at-least-once dispatch, idempotent execution ids, fencing"]
    A --> F5["Horizontal Scaling"]

3. Key Focus Areas

  • 1
    Work Ownership (leases, leader election, or conditional claims)
  • 2
    Fault Tolerance (Worker crashing mid-task)
  • 3
    Due-Work Discovery (next-fire-time index, time buckets, or timing wheels)
  • 4
    Delivery Semantics (at-least-once dispatch, idempotent execution ids, fencing)
  • 5
    Horizontal Scaling

4. What the Interviewer Looks For

The interviewer probes these areas, and the report grades the interview against them.

  • Requirements, semantics, and capacity
  • Due-work discovery and data model
  • Ownership, coordination, and duplicate prevention
  • Execution reliability and retries
  • Burst handling, fairness, and operations

Want interactive feedback?

Practice drawing this system component-by-component on a live whiteboard while the interviewer probes at your target level.

Continue to Dashboard

Core Concepts

System DesignDistributed SystemsConsistency

Continue preparing

Build a complete software engineer mock interview plan

Prepare by company

Related System Design

Design a Key-Value Store

Design a distributed key-value store like Dynamo or Cassandra with high availability.

Related System Design

Design a Notification System

Design a scalable notification service that sends emails, SMS, and push notifications to millions of users.