How one company saved $17 million (and counting) by implementing DevOps  

by Oseloka Obiora


Development teams today are faced with a tricky task: to innovate fast on increasingly tight budgets. It’s a big ask, but as businesses attempt to stay afloat amid challenging economic conditions, being charged with doing more with less is becoming the norm.  

DevOps can make a massive impact on operational efficiency. In our work supporting businesses looking to implement DevOps, we’ve seen the positive effects it can have on both productivity and spending.  

We’ve helped many businesses streamline their development process and increase efficiency across their operations through DevOps, but when we’re evangelising about the benefits of DevOps, one particular client always springs to mind.  

After implementing a DevOps approach, this leading oil and gas company cut costs by $17 million (and counting), saving more than 25,000 engineer days in the process.  

 Our work with this client recently led to us being named the Best DevOps Services Company at the Computing DevOps Excellence Awards 2024: a title we were extremely proud and humbled to receive. 

 As we polish up our latest award, we thought this would be a good time to share some tips about how we helped our client attain these transformative results. 

So, let’s look at how this company achieved such massive operational savings, and outline how DevOps can help your business do the same.  

Why is operational efficiency so critical? 

If you’re looking to cut spending and reduce overheads in your organisation, evaluating your operational efficiency will be high on your list.  

Poorly optimised processes drive running costs up through the generation of waste, rework, and unwarranted expenses, which can massively impact profitability. But If the processes that your business runs on are inefficient, it’s not just your overhead budget that will suffer consequences.  

Inefficiencies also hamper productivity, creating delays in project delivery and lower outputs. They inhibit your ability to seize opportunities for growth, innovation, and cost savings. They lead to dissatisfaction and churn not only among customers but also employees—because who isn’t happier and more productive when things work like they’re supposed to? 

Maintaining operational inefficiency is particularly crucial to the development process. When everything is running smoothly, developers are in the best possible position to work productively, foster innovative solutions, and create a valuable competitive advantage.  

However, many large organisations struggle to achieve the levels of operational efficiency that developers need to do their best work. Often, these companies will generate operational waste across a whole range of areas: 

  • Communication and collaboration: In big organisations with numerous teams, communication silos can easily build up, leading to delays, misunderstandings, and duplicated efforts. Not having effective collaboration processes in place to bridge these siloes can restrict the sharing of information and best practices that might help streamline operations.  
  • Decision-making: The complex approval structures and hierarchies commonly found in large organisations can slow down the decision-making process. When bureaucracy gets in the way, and things take too long to be signed off, businesses can experience missed opportunities, delayed projects, and increased costs. 
  • Resource allocation: Although large organisations may have more resources at their disposal, inefficient decision-making processes can impede effective resource allocation. When resources are not applied based on priorities or strategic goals, distribution can quickly become lopsided, with resources underutilised in certain areas and overprovisioned in others, creating wasted time and overworked employees. 
  • Change management: Even with the best intentions, rolling out changes across large organisations can be challenging for many reasons: resistance to change, lack of alignment among stakeholders, and unclear communication. All these factors can add up to delays, poor adoption, increased costs, and failed initiatives. 
  • Technology and tools: When change management is a challenge, getting all teams and departments on the same page and using the same tools can be tricky. This can lead to businesses operating outdated or fragmented technology systems that do not integrate well. Not only can this lead to increased licensing and maintenance costs, but it can also foster informational siloes, inefficiencies in data management, and a lack of visibility when it comes to critical data analysis. 

How DevOps can help boost operational efficiency  

Inefficient operations are a massive source of waste, eating up time, resources, and cold hard cash. No business sets out to create inadequate processes, but often, growth and changing internal structures can bloat operations and give rise to inefficiencies over time.  

Our client was facing multiple operational challenges, compounded by the fact that years of acquisitions and mergers had created a large but disjointed and siloed IT capability. Despite working extensively to modernise its infrastructure and adopt a cloud-first approach, it was still struggling to deliver efficient processes for its development teams.  

Taking action to address these common areas of operational inefficiency is the first step towards improving effectiveness, reducing waste, and driving better outcomes in the development process. In an effort to tackle the inefficiencies that were hobbling their ability to deliver value, our client reached out to us. They were looking for a secure, resilient, and scalable solution that would equip their developers with the functionality they needed to work effectively, including fast provisioning, accelerated infrastructure processes, and reduced downtime.  

Luckily for them, there is one massively impactful approach that businesses can adopt to achieve this goal: DevOps. 

At its core, DevOps is about promoting effective collaboration between development and operations teams. By bringing these two branches of development process, DevOps encourages effective communication, tight feedback loops, and efficient problem-solving.  

The approach also encourages the use of automation to speed up processes, reduce errors, and simplify development pipelines.  

DevOps helps teams iterate fast, eliminating bottlenecks and allowing fixes to be made fast. This agility enables teams to adapt to changing requirements quickly, significantly cutting down on wasted time and resources. 

Harnessed collectively, these key tenets of DevOps create a far more streamlined process that enables teams to deliver better-quality products more quickly.  

To implement DevOps for our client, we worked in two teams: one building the ‘platform’, and one building a pipeline that could deploy assets into the platform in a secure manner.  

Let’s take a look at some of the practical ways that DevOps helps enhance operational efficiency—and how we used them to help our client.  

Automation: DevOps philosophy states that whatever can be automated should be automated. This is especially applicable to manual tasks like code deployment, testing, and infrastructure provisioning. By automating these repetitive tasks, teams can reduce human error, save time, and increase efficiency. 

We put automation in place for our client, replacing manual processes and sizing the application estate to determine what their application needs were.  

To help our client manage their growing development team, we also automated their onboarding process. We built a self-service process to provide new users with automatic onboarding to the entire DevOps toolchain, so that new developers can access the tools they need to get to work faster. This automation included accounts and permissions allocated within the container cluster, stored in a secret vault. 

With this repeatable and consistent new process in place, the time needed to onboard new team members was cut from four weeks to just 30 minutes. It has also meant that any changes to a particular tool can be rolled out to all existing teams with minimal impact on project timelines. 

Continuous integration and continuous delivery (CI/CD): A central pillar of the DevOps approach, the use of CI/CD pipelines enables teams to automate the building, testing, and deployment of code changes. Given that developers need to complete these kinds of tasks multiple times a day, automating the process helps them get products over the line more quickly. Automation of these repetitive tasks also helps safeguard quality and reduces the likelihood that reworking will be required further down the line.   

In our client’s previous working model, the development team was using various tools, leading to a lack of control and making the overall management of the process very difficult. To resolve these issues, we delivered a reference CI/CD pipeline, including the DevOps best practices. 

This new pipeline provided the team with a fully automated build and deployment flow through environments to production, including security scans, testing and automated change processes. With this pipeline, developers can quickly and easily provision services and components for their applications in seconds —something that used to take weeks.  

Plus, the developers now have confidence that they’re consistently delivering compliant and comprehensively tested code that’s undergone stringent security scanning at each stage of the process. 

Collaboration and communication: DevOps is built on strong collaboration and communication among development, operations, and other teams involved in the SDLC. By breaking down silos and fostering a culture of collaboration, valuable knowledge is shared, problems are solved faster, and things move through the pipeline a lot more smoothly. For organisations, this streamlining of processes means reduced delays and more productive employees. 

Monitoring and feedback: DevOps emphasises the importance of monitoring performance metrics so that products can be continuously improved and enhanced. Continuously monitoring application performance, infrastructure health, and feedback from end users helps DevOps teams identify any issues sooner rather than later, which saves on costly, time-consuming reworking and improves customer satisfaction. We implemented chaos testing for our client, ensuring that previously catastrophic events could be created and that service architecture could accommodate these failures in the future within the stated non-functional requirements. 

Scalability and flexibility: Adopting DevOps practices allows organisations to scale or pivot their infrastructure and applications more easily when requirements or demands change. DevOps teams tend to lean heavily on cloud services, containerisation, and infrastructure as code, meaning they can quickly adapt to fluctuations in workload, and optimise the utilisation of their resources to reduce wastage. 

For our client, we chose a Kubernetes cluster as our target architecture. In this instance, we decided that Openshift was the best fit for their needs since most of the existing application estate used RedHat products.  

The container platform team got to work on developing a platform that had high availability embedded in. This provided our client with the capability to significantly reduce downtime by allowing Kubernetes and our terraform modules to scale up and down nodes, pods, and routes automatically, based on demand. 

Risk reduction: Creating high-quality products is the best way to mitigate risk, but DevOps practices help organisations go further. With processes like automated testing, version control, and infrastructure monitoring, the risks associated with software development and deployment are cut significantly. These processes help teams identify and address issues early in the development process, resulting in minimised downtime, fewer errors, and a reduction in security vulnerabilities. 

Continuous improvement: Continuous improvement in DevOps doesn’t just apply to the product, but also to the team and the way it works. DevOps encourages teams to constantly learn and enhance their processes. It urges experimentation, reevaluation, and the regular sharing of feedback among teams. With continuous improvement, the goal is to iteratively improve processes and workflows—which, in time, result in greater operational efficiency. 

The impact  

The implementation of DevOps has already made a huge impact on our client. Time wasted by developers waiting for access to tools or for infrastructure to be provisioned has been massively reduced. Standardisation of processes has improved the effectiveness of their software delivery process, eliminating support requests due to software build issues. And thanks to thorough documentation, technology transfer across the organisation has vastly improved.  

Having adopted DevOps, our client’s teams can now focus on the operational incidents impacting container platforms and tooling. Currently, 735 services have been onboarded which spanned 56 projects and 1074 repos. Our pattern was applied to 1608 pipelines and those pipelines were run 235,000 times. 

Some of the biggest benefits our client has enjoyed so far include:  

  • $17m cost saving so far 
  • Over 25,000 engineer days saved 
  • New infrastructure is provisioned in seconds, not days 
  • Developers onboarded in 30 minutes 

With its laser focus on automation, collaboration, and continuous improvement, DevOps can make a big difference to any business looking to make its operations more efficient, while also bringing a multitude of additional benefits to its software development process.  

Enhance your operational efficiency with RiverSafe 

Ready to see what DevOps can do for your business? 

Our DevOps consulting services have been designed to match where you are at in your DevOps journey. From just starting, to a fully integrated DevOps practice, our experts can help you to improve the efficiency of your software delivery process.  

Book your consultation here 

 

 

 

 

 

By Oseloka Obiora