Tag: testing

  • Debugging Code Review at 3 a.m.

    Debugging Code Review at 3 a.m.

    Naming things well saved us more time than any framework migration. We measured first, and the bottleneck was not where anyone expected. The rollback plan should exist before the rollout plan is approved. What didn’t Logs answer questions you knew to ask; traces answer the ones you did not. Naming things well saved us more…

  • Debugging Type Systems at 3 a.m.

    Debugging Type Systems at 3 a.m.

    A boring deploy pipeline is a feature, not a lack of ambition. Latency percentiles tell a story that averages politely hide. Security is mostly about saying no to defaults that were convenient in 2010. Details If the error message does not say what to do next, it is half an error message. The fastest query…

  • Type Systems in Small Teams

    Type Systems in Small Teams

    Small pull requests get real reviews, large ones get approvals. Our on-call rotation improved the day we deleted half of the alerts. The rollback plan should exist before the rollout plan is approved. Trade-offs Security is mostly about saying no to defaults that were convenient in 2010. Latency percentiles tell a story that averages politely…

  • Observability Without the Hype

    Observability Without the Hype

    Feature flags are debt with an expiration date you must actually enforce. Tests are documentation that fails loudly when it goes stale. The rollback plan should exist before the rollout plan is approved. A small example If the error message does not say what to do next, it is half an error message. We measured…

  • Rate Limiting: Mistakes I Keep Seeing

    Rate Limiting: Mistakes I Keep Seeing

    A boring deploy pipeline is a feature, not a lack of ambition. Every retry needs a budget, otherwise it is just a slower outage. The rollback plan should exist before the rollout plan is approved. Details A boring deploy pipeline is a feature, not a lack of ambition. Feature flags are debt with an expiration…

  • Debugging Database Indexes at 3 a.m.

    Debugging Database Indexes at 3 a.m.

    Logs answer questions you knew to ask; traces answer the ones you did not. We wrote the migration twice: once to learn, once to ship. The rollback plan should exist before the rollout plan is approved. The short version Our on-call rotation improved the day we deleted half of the alerts. If the error message…

  • Feature Flags in Small Teams

    Feature Flags in Small Teams

    Caches are easy to add and surprisingly hard to remove. Most production incidents start as a small assumption nobody wrote down. If the error message does not say what to do next, it is half an error message. Trade-offs Logs answer questions you knew to ask; traces answer the ones you did not. Every retry…

  • Why Observability Matter More Than You Think

    Why Observability Matter More Than You Think

    Caches are easy to add and surprisingly hard to remove. Tests are documentation that fails loudly when it goes stale. A boring deploy pipeline is a feature, not a lack of ambition. Trade-offs Naming things well saved us more time than any framework migration. Logs answer questions you knew to ask; traces answer the ones…

  • Load Testing: Mistakes I Keep Seeing

    Load Testing: Mistakes I Keep Seeing

    The rollback plan should exist before the rollout plan is approved. Feature flags are debt with an expiration date you must actually enforce. The best architecture diagram is the one the new hire can redraw from memory. Going further Latency percentiles tell a story that averages politely hide. Most production incidents start as a small…

  • What I Learned About Feature Flags the Hard Way

    What I Learned About Feature Flags the Hard Way

    Feature flags are debt with an expiration date you must actually enforce. Naming things well saved us more time than any framework migration. We wrote the migration twice: once to learn, once to ship. A small example The fastest query is the one you never send, but the second fastest has a good index. Naming…

  • Feature Flags Without the Hype

    Feature Flags Without the Hype

    Logs answer questions you knew to ask; traces answer the ones you did not. Security is mostly about saying no to defaults that were convenient in 2010. The best architecture diagram is the one the new hire can redraw from memory. Lessons A boring deploy pipeline is a feature, not a lack of ambition. If…

  • A Practical Guide to Load Testing

    A Practical Guide to Load Testing

    The fastest query is the one you never send, but the second fastest has a good index. Naming things well saved us more time than any framework migration. Security is mostly about saying no to defaults that were convenient in 2010. What worked Our on-call rotation improved the day we deleted half of the alerts.…