"No Deployments on Friday" sucks

"No Deployments on Friday" sucks

Written by David Abram

The common industry maxim of "no deployments on Fridays" often carries a certain prestige — seen as a hallmark of a mature, responsible engineering culture.

For many, it's a rule to avoid potential headaches when everyone wants to start their weekend. It might sound smart, but it could also be a red flag that something's not quite right with the team's confidence or their tools.

If this rule is a pragmatic knee-jerk reaction to stop your team from overworking on Friday or during the weekend, I am all for it. But beware, usually what happens is that these "quick fixes" are permanent. These pragmatic decisions neglect the bigger picture, stop being practical really quickly, and start a cargo cult.

If you're seeing these signs, there's trouble brewing:

Rollbacks are the norm, not the exception.
Your engineers treat production like a minefield.
A "simple fix" turns into a week-long odyssey.

These are symptoms of a deeper malaise, indicative of a lack of confidence and a fear of the production environment. This could be due to complex systems that are hard to debug, sluggish automated tests, flaky infrastructure, or cumbersome release processes. Deploying should be a non-event, regardless of the day.

Friday or not, here's what you need for that level of cool:

Release cycles should be snappy, not an ordeal.
Testing and monitoring should be top-notch, not an afterthought.
System design should be smart, not a labyrinth.

Holding back from Friday deployments is a tacit admission: "We don't trust our code, our processes, our infrastructure, or our systems." And that sucks. It's a defeatist attitude that accepts mediocrity and a culture of fear. Anytime deployment isn't just about being bold; it's about being competent. It's about demanding and creating a system that's so reliable and well-tested that the day of deployment is irrelevant.

So, let's stop celebrating the "no deployment on Friday" rule as if it's a good thing. It's not. It sucks. Teams should build systems and processes that they can trust every day of the week. After all, true peace of mind comes from knowing you're ready to deploy any day, not from avoiding one.