QA Levelling

The Friday Deploy Problem (And What It Actually Tells You About Your QA)

In many engineering teams, there is an unwritten rule: never deploy on a Friday. The logic is straightforward — if something breaks, nobody wants to be debugging a production incident over the weekend. The team agrees, the rule gets enforced informally, and everyone moves on.

 

But the Friday deploy rule is not really about Friday. It is a symptom. What it actually says is: we do not have enough confidence in what we are releasing to be comfortable releasing it when we cannot immediately respond to a problem.

 

If your team has a Friday deploy rule, the question worth asking is not how to enforce it better. The question is what it would take to feel confident deploying on a Friday.

 

What Release Confidence Actually Requires
Genuine release confidence has three components. First, you need to know what you are deploying — not just what changed in this sprint, but what the change interacts with across the entire codebase. Second, you need to know that the automated checks you ran actually cover the things most likely to break. Third, you need to know that if something does break in production, you will find out quickly and can act quickly.

 

Most teams that avoid Friday deploys are missing at least one of these three things. Usually the second. Their test coverage has gaps in exactly the areas most likely to produce production incidents — the integrations between services, the edge cases in payment flows, the user paths that look simple but sit on top of complex state management.

 

The Relationship Between Test Coverage and Deploy Frequency
There is a direct relationship between how well you understand your test coverage and how frequently you are willing to deploy. Teams with comprehensive, reliable coverage tend to deploy more often — sometimes multiple times per day. Teams with patchy or unreliable coverage deploy less often and with more ceremony around each release.

 

The ceremony — the release meetings, the pre-deploy checklists, the manual smoke tests — is not inherently bad. It is a reasonable response to uncertainty. But it is also expensive. Every manual check is engineering time that is not being spent building. Every delayed release is a feature that reaches customers later than it could.

 

Building Toward Deploy Confidence
The path to confident frequent deploys starts with an honest audit of what your current test coverage actually covers. Not the number of tests — the coverage of the flows that matter. What happens when a user completes a checkout? What happens when an API call fails mid-transaction? What happens when two users interact with the same resource simultaneously?

 

Once you know where the gaps are, you can prioritise closing them. You do not need to automate everything before you can deploy with confidence. You need to automate the things that, if they broke, would cause a production incident serious enough to ruin a weekend.

 

The Friday deploy rule is a reasonable heuristic for teams that have not yet built that confidence. But it should be a temporary state, not a permanent policy. The goal is a codebase you trust enough to deploy whenever the feature is ready — Monday through Sunday.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top