backenddrills

Production debugging practice

Debugging practice works best when you separate what you observe from what you infer. These exercises give you an incident brief, then ask you to choose a diagnosis, a stabilizing action and a durable fix.

Read symptoms as evidence

A slow request can spend time waiting for a connection, a lock, a remote response or a worker slot. Before changing capacity, identify which resource remains occupied and which measurement supports that explanation. In the free connection-pool drill, compare database execution time with time spent holding the connection.

Keep containment and prevention separate

A temporary action can reduce customer impact without removing the mechanism. Explain what becomes safer immediately, which invariant must still hold, and what change will stop the failure from returning. Consider the cost of retries, duplicated side effects, stale data and interrupted work.

Make verification falsifiable

Write a reproduction that exposes the original failure. Check the business result as well as an infrastructure metric. Then test a nearby edge case, such as replay, cancellation, concurrency or partial failure. A lower error count alone can hide work that was dropped rather than completed.

A focused practice session

  1. Read one brief and write your leading hypothesis.
  2. Commit to each decision before opening its feedback.
  3. Explain the failure mechanism in your own words.
  4. Write the check that would challenge your proposed fix.
  5. Repeat a missed decision after working on another topic.

Browse 200 scenarios across 14 topics, including observability, security, containers, performance and data integrity. Examples are fictional educational exercises and should not be used as production runbooks.

Try a complete free drill →

Three complete drills are free without an account or card. The full edition requires a verified purchase when checkout is available. These fictional exercises provide learning feedback, not hiring predictions.