Design Pod Scheduling

Hard45 min
1 / 30
understanding9 min read

Problem Statement: Pod Scheduling Platform

How Problem Statement: Pod Scheduling Platform (understanding) informs Pod Scheduling architecture and interviewer depth.

Problem Statement: Pod Scheduling Platform

Design pod scheduling for a multi-tenant Kubernetes fleet (with parallels to Nomad and Mesos). The scheduler must place Pending pods onto Ready nodes under CPU/memory/disk/GPU constraints, affinity rules, topology spread, and taints/tolerations, while keeping scheduling latency P99 < 2s and zero silent misplacement. Interviewers expect you to separate the scheduling decision (filter/score/bind) from runtime readiness (kubelet, CNI, CSI) and from cluster capacity (autoscaler, quotas). Success means predictable placement during 10× deploy bursts, fair sharing across teams, and operable rollback when policies change.

Interview Focus

  • Treat scheduling as a control loop separate from kubelet readiness
  • Quantify pending duration, bind rate, and fragmentation before plugins
  • Explain fairness (quotas, priority) and HA spread (topology, anti-affinity)
  • Describe drain + PDB + descheduler before claiming optimal placement

How to open this one

The framing that lands for pod scheduling is constraint satisfaction plus bin-packing: the scheduler filters nodes by hard constraints (resources, affinity, taints) then scores the survivors to pack efficiently without starving anyone. Lead with the filter-then-score pipeline and the failure story that proves it: a noisy-neighbor pod without resource limits starves its node, so requests/limits and anti-affinity are not optional. That shows you understand scheduling is real-time optimization under multi-tenant constraints, not round-robin placement.

Key Highlights

  • Scheduling is filter → score → bind, not kubelet readiness
  • Requests/limits and quotas define feasible placement
  • Spread + PDB + drain sequence protects HA during change
  • Observe pending age and plugin latency as primary SLOs
Staff+ signal
Link Problem Statement: Pod Scheduling Platform to measurable pending duration and blast radius, not plugin names alone.
Avoid
Hard hostname affinity, missing requests, or preemption without PDB analysis.

Section Rescue Kit

Buzzwords to use:

Scheduling frameworkTopology spread

Safe statements:

  • "I'll anchor Problem Statement: Pod Scheduling Platform on pending SLOs, fairness, and drain-safe placement."
  • "If pressed, I'll compare default scheduler vs custom only after stating ops cost."
Design Pod Scheduling - System Design | WinJob | WinJob