65% Faster Deployments : OVO’s DevOps Success Story

Published: January 2024
Client Name: OVO Energy
Industry: Energy supplier. Gas and electricity provider.

Executive Summary

The main challenge for the client was an inefficient and costly deployment system. The existing CI/CD pipeline was plagued by slow build and long deployment times, causing delays in releasing critical updates and features. Developers were frequently subjected to prolonged waits, often enduring several hours before their code could successfully reach the Production environment.

The Irysan team conducted a thorough analysis of OVO Energy's existing CI/CD pipeline, identifying bottlenecks, inefficient processes, and areas for improvement. Following this analysis, we adopted an iterative approach to implement enhancements without disrupting the ongoing development process. This ensured a seamless integration of improvements while maintaining the continuity of the development workflow.

Background

Founded in 2009, OVO Energy has grown to become the second-largest energy supply company in the United Kingdom, with around 5 million customers and over 8,000 employees and an annual revenue of over £5 billion (2022). OVO Energy is regarded for its innovative approach and commitment to sustainability: specifically, for the dedication to promoting green and renewable energy sources and the emphasis on a reduced carbon footprint. The company advocates and implements smart metre technology to empower consumers with real-time energy usage insights and improve energy efficiency. OVO Energy's focus on sustainability, innovative solutions, and customer satisfaction has positioned it as a notable player in the global energy market.

Challenges

OVO Energy grappled with some specific issues that significantly affected the pace of their development teams. For example, installing the necessary dependencies for builds and running tests took an exorbitant amount of time, contributing to costly delays. Build times were slow, and the extended time from coding to deployment not only decreased the time-to-market rate for new features and fixes, but also negatively impacted developer focus and the overall team productivity. The burden of long-running sequential tests meant that software developers faced extended waiting periods for feedback, which also led to unproductive context-switching. Outdated testing frameworks and developer toolchains added an extra layer of complexity. Tackling these issues head-on, Irysan implemented targeted solutions to streamline these processes and propel OVO Energy towards a more efficient development lifecycle.

Solutions

To counter the challenges posed by slow build times and lengthy dependencies installation, our team strategically leveraged caching. By incorporating robust caching mechanisms, we significantly accelerated builds and facilitated the reuse of build artefacts that did not necessitate rebuilding, thus optimising resource utilisation.

Addressing the issue of extended feedback loops caused by long-running sequential tests, we implemented a parallelisation strategy. This approach allowed for the simultaneous execution of tests, providing rapid feedback to developers and saving crucial minutes with each code iteration.

Recognising the impact of outdated testing frameworks and development toolchains on the overall build speed, we executed a comprehensive update. This involved upgrading testing frameworks and modernising build toolchains, not only enhancing build efficiency but also enabling the adoption of the latest features, such as test sharding.

The outcomes achieved

These strategic interventions collectively contributed to a substantial reduction in the time taken for critical processes, empowering OVO Energy's development team with a more responsive and efficient workflow.

Before the optimisation, pull request status checks, such as End-to-End, Unit and Integration Tests were taking ~35 minutes and then another ~25 minutes after the merge to get the change deployed to the non-Production environment.
After the optimisation status checks are taking ~16 minutes and then ~5 minutes to get to the non-Production environment, resulting in an overall efficiency improvement of 65% .

Results and Benefits

Collectively, these enhancements resulted in a streamlined and highly efficient CI/CD pipeline, culminating in a 65% reduction in the overall pipeline time. OVO Energy's development team experienced a paradigm shift in their workflow, enjoying faster builds, quicker feedback loops, and increased agility. Business benefits of these improvements include faster time to market for new releases and improved rate of retention associated with greater focus and productivity among its engineers.

Conclusion

The key takeaway of this case study was that organisations can progressively enhance their delivery times by conducting meticulous analysis, pinpointing weaknesses in their CI/CD processes, and iteratively addressing them. The strategic use of caching and parallelization emerged as powerful tools in reducing build times and testing cycles, unlocking significant time savings. Furthermore, keeping the toolchain updated proved essential not only for speed improvements but also for tapping into the latest features.

This case underscores the importance of a systematic approach to CI/CD optimisation, demonstrating that incremental adjustments can lead to substantial efficiency gains in software delivery pipelines.

Contact us today to start the journey.

Previous
Previous

OVO Energy: Journey to Continuous Improvement with Test Automation

Next
Next

FutureLearn: Boosting Business Value with Cloud Cost Optimisation