DevOps is a deeply technical subject of which those in business roles typically have little understanding. As such, I can’t launch into a post on the business value of DevOps without first providing some context and an explanation as to what it is. I’m sure you’ve heard the refrain:
“Every business is a software business”
Whether you agree with the above statement or not, it is now very clear — digital disruption is real. The past few years has seen profound change across many established industries (with repercussions felt across tens, if not hundreds of thousands of businesses), and it’s clear that we’re only just getting started.
Established companies must resist the temptation to perpetuate “business as usual”, and instead remodel their businesses to create and serve the new kinds of value demanded by customers in a digital world. And if you as the incumbent won’t do it, a new entrant into your market will.
“The traditional core competencies of existing companies often become less like industry-defending fortresses — and more like deadweight.”
– Digital to the Core. Mark Raskino and Graham Waller.
DevOps can be described as many things, but in non-technical terms, it is a modern, highly successful approach to developing and maintaining software. Essentially, DevOps is at the core of digital modernisation.
If your organisation actually builds software (as opposed to outsourcing development or buying & integrating off-the-shelf solutions), then adopting DevOps practices is essential if you’re to be successful — now and in the future.
Context is everything, so allow me take you on a quick history lesson.
The traditional approach to software development (and project management for that matter) is known as “Waterfall” — for the fact that the visual representation of the approach (i.e., breaking down project activities into linear, sequential phases) resembles a waterfall.
It’s great for software projects that have constrained time lines and/or budget, where it is not possible to iterate, where the scope is clearly defined and requirements don’t change. Waterfall can be a good option when delivering enhancements to legacy software, where features and any integrations are well defined.
Where Waterfall comes unstuck is when unexpected changes are required, which — let’s face it — are a certainty when it comes to modern software projects. It is also slow; multiple hand-offs between different teams delay the ability to realise value from the project, while also increasing the risk of injecting quality problems into the outcome.
Further, the testing/QA phase comes too late to be useful. And while it is still possible to fix any significant bugs this late in the game, it is far too late to even think about improving the actual code quality. This is a significant problem and has given rise to the discipline of Quality Engineering. And because testing is done at the end, there is almost always pressure to rush it thanks to slipping timelines — resulting in long term quality problems.
And most crucially of all, unless the requirements were perfectly spot on from the outset, the finished “big outcome” at the end of the process is unlikely to meet stakeholder expectations. This inevitably requires multiple iterations of this slow, expensive and change-resistant cycle to address any feedback.
In my experience the existence of clear, concise and perfectly written requirements are as rare as rocking horse poop. And even if the requirements were captured correctly, experience dictates that stakeholders can rarely articulate what they actually need in the first place. You can be certain that the first time they get their hands on what you’ve built, it’s not what they were expecting.
In response to a world where the only certainty is change, Agile was born. This is an iterative approach that de-risks software projects by breaking the work up into smaller pieces that are delivered to stakeholders quickly, allowing for rapid feedback.
Where timelines are short and flexible, Agile is ideal. As a methodology, it embraces “Continuous Improvement” and is optimised for change. It produces more features in a shorter period of time while allowing for flexibility in requirements and scope. Each cumulative outcome is able to evolve to suit the changing needs of the stakeholders and customers.
One of the most significant features of Agile are the changes it demands of an organisation’s traditional structure. Its success relies upon the creation of cross-functional teams with accountability for the outcome from start to finish — a refreshing alternative to managing slow, error-prone hand-offs when teams work in silos.
So what is DevOps? For a start, it’s notoriously difficult to define because it is continuously evolving (thanks a lot Continuous Improvement!). To quote Atlassian,
DevOps is a set of practices that works to automate and integrate the processes between software development and IT teams, so they can build, test, and release software faster and more reliably.
DevOps can also be characterised by a healthy collaboration between Product Owners, Software Engineering, Quality Engineering, IT Operations and Infosec. Central to DevOps is testing, security and deployment automation. This enables your team to safely deploy software to production environments with the push of a button. DevOps is consumed with speed and automation.
Whereas most organisations strive to release new code into production once every three months, organisations with mature DevOps practices will often push new code into production upwards of 20 times per day — with sophisticated teams releasing new software at a rate of more than 200 times per day.
In today’s digital world, if you are still Waterfall-ing while your competition are DevOps-ing, you’re toast.
Thanks to its automation-first approach, DevOps and a well conceived CI/CD pipeline allows you to cycle through the various quality and security gates constantly, dramatically compressing the development, testing and deployment phases — bringing the time it takes to get software from Development into Production from months (Waterfall) or weeks (Agile), down to minutes (DevOps).
Software quality goes through the roof, you get value into the hands of your customers rapidly and can respond to changing market conditions faster and more effectively than your competition.
How does DevOps drive business value?
Unfortunately, while the vast majority of organisations agree that DevOps should focus on driving business value, they struggle to move beyond using tech-focussed metrics such as deployment frequency, change fail percentage and so on to demonstrate its value.
It is time for organisations to start considering and measuring its impact using business metrics too. A healthy DevOps culture significantly contributes to superior organisational performance — it’s time we joined the dots.
DevOps brings measurable benefits to both your top and bottom lines, solving real business problems. At a very high level, a strong DevOps practice brings the following benefits:
- Lower development, testing and operational costs,
- Faster time-to-market for new products and features,
- Higher quality, more secure software and services,
- More stable and failure-resilient IT systems,
- Happier, more productive and efficient teams,
- Happier customers, and;
- Increased revenue.
The business value of DevOps can be linked to and demonstrated through a variety of customer and business success metrics, such as:
Customer Success Metrics:
- % of customers that complete a key workflow
- % customer retention
- Net Promoter Score
Business Success Metrics:
- Customer Acquisition Costs (CAC)
- Customer Lifetime Value (CLV)
- % conversion from free to paying customers
- Customer churn %
- Employee Engagement / NPS
- Average Employee Tenure
- % Revenue / EBITDA growth
- Average Revenue Per User (ARPU)
- % Compound Annual Growth Rate (CAGR)
DevOps is simply the best, most efficient and effective way for technology teams to work. Executive teams must provide the air support (and investment) needed to foster the adoption of DevOps principles, processes and tooling if they want to win in the market.
If innovation through software forms part of your competitive advantage, then DevOps is fundamental to the future success of your organisation.
What are you waiting for?