DEV Community

David Morgenthaler for Armory

Posted on

Continuous Delivery is no longer optional

The landscape has changed

Going into the pandemic, the global market was already moving rapidly towards digital transformation, due to universally rising demand for elegant and effective digital solutions. Peaking in 2017, the last six years have seen the most mergers and acquisitions in history; 2021 is set to be another banner year. The last 18 months have created an unprecedented tidal wave of demand for digital services. As McKinsey’s Global Managing Director said, “We have seen 10 years of digital innovation in roughly three months.”

If the pandemic has taught us anything, digital transformation is now mandatory for any business that wants to survive. Given the hockey-sticking demand for digital services and falling tolerance for “the pandemic” as an excuse for poor service, the need to create engaging, stable, and secure, and scalable experiences at speed has never been higher. So how can companies incorporate excellence into their software development life cycle?

What is continuous delivery & why does it matter?

Prior to the cloud, companies had to deliver code into their data centers; in a way, each company had to reinvent the wheel to deliver software. Continuous delivery (CD) allows organizations to codify and automate otherwise manual practices. According to Jez Humble, CD fosters low risk releases, faster time to market, higher quality, lower costs, better products, and happier teams. Given the clear benefits, how widespread is adoption?

Despite increasing automation, adoption of CD is slow

As of 2021, roughly 70% of companies have committed to ramping up automation. However, the adoption rate of CD principles and technologies remains relatively slow. Out of the 19k developers surveyed for the 2021 State of Continuous Delivery report:

  • nearly ⅔ reported that code takes ≥ a week to go from commit to production,
  • 69.1% pushed to production ≥ 1x/week, and
  • over ½ take ≥ a day to fix an unplanned outage.

Why do so many companies take so long to push new features, breakfixes, and ship code? Says Frederic Rivain, CTO of Dashlane, “[CD] requires deep engineering practices around code, QA, and operations,” not to mention, the right tools; in short, it’s difficult and expensive.

The costs of not adopting CD are untenable

Autodesk Software Architect Brandon Leach said, “There [are] simply too many manual steps and decisions that need... to happen to launch a service into a new region.” Summing up the challenge elegantly, Sr. Director of Engineering, Ben Cochran, said, “Making our products and services available in new regions takes months. It needs to take minutes."

Manual processes slow deployment speed and reliability and often translate to unwieldy scheduled releases. Edith Harbaugh, CEO of LaunchDarkly called this way of releasing code “the push and pray release,” so named for the apparently divine luck involved in the outcome. “If you move slowly,” she continued, “it's... more likely you’ll break something.”

The costs of breakage are not strictly limited to reputational harm. A 2015 study by AppDynamics uncovered that “A critical application failure costs a staggering $500,000 to $1M per hour [and] downtime costs the Fortune 1000 between $1.25 billion and $2.5 billion every year.” Yet six years later, it still takes nearly 20% of companies over a month to restore services after an unplanned outage.

It’s not too late to act

Autodesk Senior Software Architect Shrirang Moghe had this advice: “align with the best early on… don’t waste time… Amazon and Armory, they’re best in class.” The cost of not adopting CD is rising, and the delta in outcomes between those who do and don’t adopt it will diverge at pace.

In short, for companies that wish to thrive in the future, adopting continuous delivery is no longer optional.

Discussion (0)