0:00
/
0:00
Transcript

Let's Deploy on Friday!

Why it’s more about mindset and practice than a technical challenge.

"Don't deploy on Friday." You've probably heard this phrase a hundred times. I used to believe it, too. But what if I told you that deploying on Friday, or even the weekend, doesn’t have to be a nightmare? In fact, for me and my team, it's just another day. How did we get there?

Let me take you through my journey.

Part I - The Fear of Friday Deployments

"We are often afraid to deploy on Friday, but why is that actually the case? Not being able to deploy any day is a defect in your team." – from the video.

I remember the early days of my career when we dreaded Friday deployments. We would push code, hold our breath, and pray nothing broke before the weekend. If something did go wrong, it meant long hours, upset clients, and team members glued to their screens instead of enjoying their time off. The stress was real, often leading to one painful realization: we didn’t trust our process – let’s avoid it.

So, I asked myself, Why do we fear deploying on Friday? The answer was obvious—we lacked confidence. Confidence in our code, confidence in our processes, and confidence in our ability to handle what came next.

That resulted in hesitance to act, which was in that scenario to move forward and deploy. I want to get things done, not postpone until Monday.

Finding the Solution: Continuous Delivery

"The most known way to prevent deployment fear is Continuous Delivery (CD)." – from the video.

At some point, I knew things had to change. We couldn't keep living in fear of deployments. That's when I truly embraced Continuous Delivery (CD)—not just as a concept but as a way of working.

I realized that CD isn't just about pushing code frequently; it's about building a system where deployments are small, predictable, and low-risk.

Trunk-based development, abandoning long-lived branches and focusing on small, incremental changes, is a key practice I can only recommend in Software Development. I have yet to find an example where TBD doesn’t work better than branching like a Christmas tree.

Instead of deploying massive, monolithic updates every few weeks, we started pushing changes daily, sometimes multiple times a day. We have been working on those changes anyway since we have been practicing continuous integration.

Stay in a releasable state

It’s fundamental to own the change you do. That includes the following:

  • Act mature – Treat changes like they go to production every time you commit.

  • Be a Team player. Communicate when necessary, and don’t hold back. If you need to commit to something and are insecure, consult a peer.

  • Make sure your changes are tested. Don’t deploy just based on gut feelings, and don’t lose yourself in senseless shallow tests; critically design your tests upfront to ensure your changes won’t harm anyone or anything. I recommend Test-driven development.

This shift eliminated the fear of Friday because deploying became routine, not an event.

We also adopted these key practices:

  • Small batch sizes; Every change was small enough to be reviewed and tested quickly.

  • Automated testing; Continuous integration ensured that broken code was caught early.

  • Feature flags Allow us to toggle features on and off without risky releases.

  • Observability; Real-time monitoring and alerts gave us immediate insights into deployments.

The Transformation: Confidence, Not Fear

"With Continuous Delivery, we know what happens, we can make a quick test, and it's all fine." – from the video.

Once CD became part of our culture, everything changed. Deployments stopped being stressful and became routine. Suddenly, we didn't fear deployments; we embraced them.

  • No more waiting for Monday; We deploy when needed, regardless of the day.

  • Faster feedback; Our customers see value sooner, and we react faster to their needs.

  • Reduced burnout; No more long hours fixing weekend breakages.

Deploying on Friday became just another day because the difference between Friday and Monday no longer existed. The process was the same; the results were predictable.

Part II - Continuous Delivery & Business

"Continuous delivery is actually improving the business factor and reducing burnout rates." – from the video

Beyond the technical benefits, Continuous Delivery has profoundly impacted the business side. We have strengthened the alignment between development and business goals by enabling quick, reliable releases. Business stakeholders no longer have to wait weeks or months for features to go live. Instead, they see steady updates, which helps with planning, marketing, and customer engagement.

Some key business benefits we've observed:

  • Improved predictability; Frequent deployments help align expectations with stakeholders.

  • Faster time-to-market; Small, incremental releases mean that features and fixes reach users sooner.

  • Better resource allocation; Teams can prioritize and pivot based on real-time feedback.

  • Stronger collaboration; Continuous updates foster better communication between dev teams and business units.

In short, Continuous Delivery isn't just an engineering practice; it's a business enabler. Reducing risk and increasing transparency help businesses stay agile, responsive, and competitive.

Reduce stress with PO, PM, or Users.

Hiding a feature in a long-lived branch for three weeks often creates a false sense of progress. Initially, everything may seem on track, but as the deadline approaches, unexpected issues arise—hidden bugs, unanticipated dependencies, and last-minute integration problems.

This last-minute rush forces developers to work under pressure, cutting corners and compromising quality to meet deadlines.

The result? Dissatisfied stakeholders, frustrated developers, and an overwhelming sense of stress. Continuous Delivery eliminates this cycle by encouraging small, incremental changes tested and deployed frequently, ensuring visibility and early feedback.

With CD, progress is transparent, problems are caught early, and development becomes a predictable, stress-free process that fosters confidence and trust within the team.

Remember this for your life:

👉 You want to give and receive feedback early on in the process. Postponing and hiding are the worst practices in life, not only in software development. They are bad habits based on the fundamental fear of change. Inner Resistance. Act instead.

Key Takeaways

  • Fear is a symptom of a broken process; if you're scared to deploy on Friday, your workflow needs fixing.

  • Small changes build confidence; frequent, incremental releases reduce risk.

  • Automate everything; testing and deployment pipelines should ensure reliability.

  • Transparency bridges gaps; business and tech teams should align with clear expectations.

  • CD isn't just for big teams; even small startups can benefit.

What’s Next?

It might be time to rethink your approach if you still hold off on deployments until Monday. What's stopping you from confidently deploying any day of the week?

Let’s discuss, have you implemented Continuous Delivery?
How has it changed your deployment strategy?


Links and Resources

Discussion about this podcast