Tag: python

  • Monorepos in Small Teams

    Monorepos in Small Teams

    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. If the error message does not say what to do next, it is half an error message. Going further We wrote the migration twice: once to learn, once to…

  • Debugging Feature Flags at 3 a.m.

    Debugging Feature Flags at 3 a.m.

    We measured first, and the bottleneck was not where anyone expected. A boring deploy pipeline is a feature, not a lack of ambition. We wrote the migration twice: once to learn, once to ship. Trade-offs Latency percentiles tell a story that averages politely hide. We wrote the migration twice: once to learn, once to ship.…

  • What I Learned About Caching the Hard Way

    What I Learned About Caching the Hard Way

    We measured first, and the bottleneck was not where anyone expected. The fastest query is the one you never send, but the second fastest has a good index. Logs answer questions you knew to ask; traces answer the ones you did not. Going further Caches are easy to add and surprisingly hard to remove. Tests…

  • Ten Notes on Feature Flags

    Ten Notes on Feature Flags

    Naming things well saved us more time than any framework migration. Most production incidents start as a small assumption nobody wrote down. We measured first, and the bottleneck was not where anyone expected. Lessons Latency percentiles tell a story that averages politely hide. Small pull requests get real reviews, large ones get approvals. The rollback…

  • Observability in Small Teams

    Observability in Small Teams

    The best architecture diagram is the one the new hire can redraw from memory. The rollback plan should exist before the rollout plan is approved. Naming things well saved us more time than any framework migration. The short version A boring deploy pipeline is a feature, not a lack of ambition. Naming things well saved…

  • A Practical Guide to Code Review

    A Practical Guide to Code Review

    Naming things well saved us more time than any framework migration. Tests are documentation that fails loudly when it goes stale. Security is mostly about saying no to defaults that were convenient in 2010. What didn’t If the error message does not say what to do next, it is half an error message. We measured…

  • Why Background Jobs Matter More Than You Think

    Why Background Jobs Matter More Than You Think

    We measured first, and the bottleneck was not where anyone expected. Tests are documentation that fails loudly when it goes stale. Naming things well saved us more time than any framework migration. Getting started Every retry needs a budget, otherwise it is just a slower outage. Tests are documentation that fails loudly when it goes…

  • Background Jobs Without the Hype

    Background Jobs Without the Hype

    A boring deploy pipeline is a feature, not a lack of ambition. Logs answer questions you knew to ask; traces answer the ones you did not. The fastest query is the one you never send, but the second fastest has a good index. Lessons Feature flags are debt with an expiration date you must actually…

  • Monorepos Without the Hype

    Monorepos Without the Hype

    Caches are easy to add and surprisingly hard to remove. The best architecture diagram is the one the new hire can redraw from memory. The fastest query is the one you never send, but the second fastest has a good index. Context Logs answer questions you knew to ask; traces answer the ones you did…

  • Caching in Small Teams

    Caching in Small Teams

    Latency percentiles tell a story that averages politely hide. We wrote the migration twice: once to learn, once to ship. Caches are easy to add and surprisingly hard to remove. Details The rollback plan should exist before the rollout plan is approved. A boring deploy pipeline is a feature, not a lack of ambition. If…

  • Background Jobs in Small Teams

    Background Jobs in Small Teams

    The best architecture diagram is the one the new hire can redraw from memory. If the error message does not say what to do next, it is half an error message. The rollback plan should exist before the rollout plan is approved. Going further Logs answer questions you knew to ask; traces answer the ones…

  • A Practical Guide to Observability

    A Practical Guide to Observability

    Naming things well saved us more time than any framework migration. Security is mostly about saying no to defaults that were convenient in 2010. Our on-call rotation improved the day we deleted half of the alerts. Going further Caches are easy to add and surprisingly hard to remove. A boring deploy pipeline is a feature,…