Root Cause

Root Cause is a collection of the most interesting bugs I encountered in my 20 years of my professional career, ranging from performance bottlenecks and non-deterministic crashes to subtle data inconsistencies and incorrect results. 

This book is for anyone curious about how production backend systems really behave under pressure, and how to debug them when they don’t. Even when you don’t have access to the source code.

List of chapters:

  • Preface
  • Chapter 1 - A System-wide Slowdown
  • Chapter 2 - Resurrected
  • Chapter 3 - Exhausted
  • Chapter 4 - “I Had to Click Twice”
  • Chapter 5 - The Hanging Requests of HTTP/1.1
  • Chapter 6 - The Sorrows of HTTP/2
    Investigation
  • Chapter 7 - Gateway Timeout
  • Chapter 8 - The Wrong Worker
  • Chapter 9 - Contention
  • Chapter 10 - The One Hour Connection
  • Chapter 11 - That Escalated Quickly
  • Chapter 12 - Mo Memory Mo Problems
  • Chapter 13 - Select Star
  • Chapter 14 - Unsafe to Retry
  • Chapter 15 - Overbalanced
  • Appendix A - Bonus Bugs
  • Appendix B - The !Empathetic Engineer

Â