Growing at an impressive compound annual rate of 19.1% per year, the DevOps tools market is predicted to be worth almost $15 billion by 2026, notes Nuno Martins, Senior Channel Solutions Architect at Red Hat.
This momentum can be largely ascribed to the drive for digital transformation and the recognition that for businesses to be competitive or disruptive, they need to find ways to automate more processes. So, what exactly is DevOps and what does the rapid growth of available DevOps tools mean for business?
Out with the old, in with the new
With the popularity and success of the Agile methodology, development projects have moved on from outdated, linear waterfall approaches. Although Agile’s focus on continuous development, feedback, and testing throughout a software project’s lifecycle has created efficiencies and improved delivery speeds, the siloed treatment of developers (dev) and operation engineers (ops) slowed projects. The back and forth between departments and the time spent waiting for requirements to be implemented highlighted the opportunity for more efficient collaboration between dev and ops, giving rise to an approach that unifies the practices: enter DevOps.
DevOps and automation
The aim of DevOps is to speed up the development lifecycle by delivering continuous development, testing, integration, deployment, and monitoring in a way that always aligns with business objectives. By making communication and workflows between development and operations teams more flexible, efficient, and automated, businesses can not only deploy services and applications faster, but also free up their workforce to focus on delivery and innovation.
DevOps practice sets out to ‘automate everything’ to make frequent deployment possible. That means getting products out to market faster, introducing new features faster, fixing problems faster, and ultimately increasing your ability to keep up with customer demands.
Companies that wish to remain competitive by cutting costs, optimising operations, and being first-to-market can no longer do so without automation. In the past, making changes to monolithic applications was a complex and arduous process. Even a small software upgrade would have to go through system administrators, project managers, security teams, and quality assurance – and it could take months for any changes to go into effect. Now, with virtualisation and containerisation, applications or essential security upgrades can be deployed quickly and easily, but automation is essential to take advantage of these innovations.
By automating the deployment and management of workflows, businesses can capitalise on improved operational efficiency, more productive staff, and increased response times to security incidents. When Forrester Consulting interviewed a company that had been using Ansible, an open source automation platform, they saved 48,000 hours of staff time by automating the process of bringing servers online, stress-testing resources, and deleting nodes. The company also saw a 94% reduction in response times for security incidents by automating the recovery and reconfiguration process.
For some, a barrier to adopting automation in DevOps is that they think it will take away jobs or make operation teams redundant. But what automation actually does is allow teams to work more efficiently, collaboratively, and deploy projects at speeds that wouldn’t be possible if done manually. After all, would you rather have your highly paid engineers working on repetitive maintenance or game-changing innovation?
The role of open source in DevOps
The Open Source Security and Risk Analysis Report by Synopsys found that 99% of codebases in 2019 contained open source components. The extensive range of resources available to open source developers not only gives them unmatched flexibility and access to industry leading innovation, but also allows those in DevOps to spend more time assembling the components for apps rather than writing the code for them. According to Gartner, open source developers may write less than 10% of the code in a new application – imagine what your developers could do with all that extra time on their hands.
As new and more innovative DevOps tools are constantly released, balancing flexibility and standardisation is also becoming more important. A DevOps approach is designed to increase visibility and collaboration among teams, rather than having everyone work in siloes. This works perfectly with the open source approach, as open source software is easier to integrate with other systems, making it easier to find a tech solution that fits the needs of different teams.
Making the mind shift
DevOps isn’t only a new approach to software development – it’s a new way of thinking. Businesses that want to begin their DevOps journeys need to prepare for a collaborative mindset. DevOps and automation aren’t going to be integrated overnight and businesses need to look at their existing processes first and find the right tools and practices to streamline operations. But companies don’t need to undertake this journey alone: consulting programmes like Red Hat’s Open Innovation Labs are invaluable as they connect organisations with experts to help them identify challenges and find custom solutions to set them on the path to innovation.
The integrated approach of DevOps gives people visibility over different parts of a system and its processes, making it easier to recognise bottlenecks, speed up resolution times, and ultimately build more robust business systems. The nature of open source also makes this easier, and complements the collaborative DevOps mindset. In today’s rapidly evolving world of software, we can no longer afford to have developers working in isolation, getting caught in manual processes, or building code unnecessarily from scratch. A business is an organism made up of different people: the easier it is for them to work together, the better the business performs as a whole.