Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

On-call rotations: stop using a spreadsheet someone forgot to update

Description and use

Move from manual spreadsheet scheduling to an automated on‑call system with clear rotation rules, escalation, and compensation, using PagerDuty, Opsgenie, or simple cron+Slack.

Problem

Manual on‑call schedules in spreadsheets cause coverage gaps, burnout, lack of escalation paths, and holiday blindness.

Outcome

Teams transition from unreliable spreadsheet schedules to automated, transparent on‑call systems, reducing incidents, preventing burnout, and ensuring clear escalation paths.

Workflow

  • Define rotation rules: primary/secondary, weekly rotation, no more than 2 consecutive weeks per engineer, handoff at Monday 10am local.
  • Set escalation policy: primary 5 min, secondary 10 min, manager 15 min, CTO 30 min, all tracked automatically.
  • Implement follow‑the‑sun for global teams: APAC 00:00‑08:00 UTC, EMEA 08:00‑16:00 UTC, Americas 16:00‑00:00 UTC, each with primary and secondary.
  • Establish compensation and recovery: weekly on‑call bonus, day off after night‑time incident, no meetings after major incidents.
  • Choose a tool: PagerDuty (best overall), Opsgenie (cheaper), cron+Slack (small teams), or custom Python script for full control.
  • Create a template: include primary/secondary contacts, escalation steps, handoff time, and runbook updates.
  • Schedule handoffs: review pending incidents, update runbook with learnings.
  • Avoid common mistakes: don’t assign newest engineer as primary, don’t skip handoff, plan holiday coverage 2 weeks ahead, make on‑call mandatory.
  • Provide ready‑to‑use templates and scripts via Ops Starter Kit.

Evidence

Coverage gaps: Nobody realizes the schedule is wrong until an incident hits

Source

Primary has 5 minutes to acknowledge; Secondary gets paged at 10 minutes; Manager notified at 15 minutes; All tracked automatically

Source

PagerDuty: Best overall, but expensive for small teams; Opsgenie: Good alternative, cheaper; Simple cron + Slack: For teams under 5 people, this works fine; Custom Python script: If you want full control

Source

  • Record date: 2026-09-20T16:45:40.262Z