a16z generative ai

Runbooks are the notes you leave for tired people

Small services break at bad hours. An alarm goes off when a tired person does not want to think. A dashboard turns red. A query runs long. A queue backs up to four times its normal depth. In those moments, a runbook helps more than memory. It gives the person on duty a path through noise, not a quiz.

I keep my favorite runbooks short, specific, and shaped like a map for a dark hallway. They point to lights, doors, and traps. If you want a practical example, the superun runbook shows how an operational document can stay readable under pressure. That matters. A dense process page invites mistakes at 2 a.m., but a clear step list can keep a small failure from becoming a 4-hour mess.

Notes beat memory when sleep is the enemy

I keep a notebook for incident checks because my recall turns uneven at night. At 3 p.m. I can explain a log rotation task. At 3 a.m. I may forget the order of steps. A runbook reduces that risk. It also reduces the cost of teaching someone else. A new helper can follow a checklist and learn the system one action at a time.

The value is not speed alone. Speed comes from fewer wrong turns. A good note can cut a recovery from 40 minutes to 10 minutes because it skips guesswork. In one side project, a disk warning led me to a stale log path. A written note made the fix obvious. Without it, I checked three services that ran fine.

What a runbook should do before an alarm

Before a page lands, a runbook needs a small shape. It should name the symptom, the first check, the safe action, and the escalation point. That order helps because incident stress narrows attention. A person needs the next move, not a broad architecture lesson.

  • The note should list the symptom in plain terms, such as “5xx errors above 2%” or “queue age over 90 seconds.”

  • It should state the first two checks, usually a service status page and a recent deploy log.

  • It should include one safe rollback or pause step, if the system allows it.

  • It should point to the person or team to contact when the fix falls outside normal scope.

  • It should name data that a helper must not touch, such as live customer tables or billing records.

Those bullets sound basic, and they should. Basic is the point. A runbook that reads like a product brochure hides steps behind tone.

Common weak points in operational notes

Weak runbooks often name tools without paths, and they give actions without thresholds. Some mention escalation with no contact. That creates more work for the on-call person. The note should save time, not start a scavenger hunt.

Another problem is over-explanation. A long paragraph about why a cache exists can push the real command off the screen. If a note has more than three sentences before a useful step, trim it. I keep a rule: if I cannot find the first action in five seconds, I rewrite the note.

How to test a runbook without burning people out

You do not need a full outage to check a runbook. A quiet tabletop drill takes 15 minutes and exposes gaps fast. Pick a real alert from the last 90 days. Ask a colleague to use only the note. Do not help unless the colleague breaks a safe boundary. Then mark the points where they stopped, asked, or guessed.

  • Choose an old incident, not a fantasy scenario, because real symptoms create real confusion.

  • Time the first three steps. If they take more than 5 minutes, add a shortcut.

  • Check links and owner names every quarter.

  • Add one line that tells the reader to pause automation and page a human if the runbook looks wrong.

  • Ask the tester to rate clarity from 1 to 10. A 6 warns that the note needs work.

These small checks build confidence. A team that has used a runbook in a drill will trust it more during a live event. Trust lowers stress, and stress hides bad choices.

How to make the next incident less weird

People update runbooks well after quiet incidents, not only after disasters. When an event ends, write down what worked and what confused people. Do not polish the story into a neat lesson. If the cause was a half-remembered config, say that. If the fix was to stop a cron job, say that too.

I end incident notes with short lines that record the action and the next change. This format keeps the note light enough to update often. People who touch a document 12 times a year keep it alive. A document that one person touches once after launch reads like a museum card.

A runbook is a promise that someone else will not have to guess what you knew.

That promise has practical weight. It protects users from a bad hour. It protects operators from long, odd recovery paths. It protects the next person who opens the note with red eyes and a cup of cold coffee.