Over the past decade, it has become undeniable that software underpins modern industry. The application economy has changed the way that all industries engage with their customers, drive efficiencies and generate revenue. And DevOps, which celebrates its 10th anniversary this year, has played a significant role in this monumental shift.
As we mark this important milestone, we speak with Ashok Reddy, Group General Manager for DevOps at CA Technologies (opens in new tab), to explore its humble beginnings, the current benefits and challenges that customers are seeing, as well as how he believes it will evolve in the future.
- DevOps is turning 10 this year – where did it all begin?
The events that are widely considered the “little bang” gave birth to what we know today as DevOps.
It started with software developer Andrew Clay Shafer, who scheduled a “birds of a feather” session titled “Agile Infrastructure” at the Agile Conference in Toronto. However, concerned no one cared about the topic, Shafer ended up blowing off his own session.
However, another developer, Patrick Debois, did show up to the empty room. He was presenting a paper (opens in new tab) called “Agile Infrastructure and Operations” at the conference and Shafer’s session had caught his eye. The two later met up in a hallway and had a long talk, three months after which they formed the Agile Systems Administration Group with the goal to foster greater collaboration between developers and systems administrators. It was these two minds that initially sparked the movement that strives to unify development and operations through increased collaboration and automation in order to build, test and release software faster.
- DevOps adoption is clearly on the rise. What’s triggered the rapid rate of adoption over the past couple of years?
The app economy is booming. By 2021, market intelligence company, App Annie (opens in new tab) predicts that the economic activity surrounding mobile applications will be worth $6.3 trillion globally – nearly five times the 2016 total.
Mobile’s emergence has been one of the century’s biggest mega-trends and transformed the software development ethos. Organisations must now deliver new, high-quality code to customers as quickly as possible to retain a competitive advantage.
In this new paradigm there are two essential attributes – agility, the ability to develop software iteratively and adapt quickly as changes occur; and the automation of manual, repeatable steps.
To incorporate these qualities into its processes and culture, companies are increasingly looking to DevOps to promote continuous delivery and get new features, configuration changes and bug fixes into the hands of users rapidly and reliably.
- What changes have you seen in the state of DevOps over the past 18 months?
There is much more awareness around the potential for DevOps to support modern business processes and, as a result, adoption is on the rise. Nearly two-thirds of organisations were using DevOps to support certain processes by the end of last year, according to Gartner (opens in new tab). Elsewhere, Forrester labelled (opens in new tab) 2017 “the year of DevOps”, reporting that its “questions and discussions with clients had shifted from ‘What is DevOps?’ to ‘How do I implement at scale?’”.
As more businesses pilot DevOps in smaller teams and projects in contained environments expand agile practices across the organisation, we’re going to see more and more examples of what DevOps success looks, feels and smells like.
- What are the key challenges that organisations are facing in the pursuit of DevOps?
Unfortunately, in day-to-day life at many organisations, the continuous delivery pipeline doesn’t always operate very continuously.
In those situations, the application is shuttled around a vast tool chain, the management of which is untenable and leads to confusion, delays and mistakes. Silos often form as a result, teams on the same project drift apart rather than closer together, using increasingly diverse tools and approaches. Bottlenecks gum up the works – for example, testing processes that are time-consuming and resource-intensive to create, provision and maintain.
The greatest challenges most organisations face is ironing out these application management processes to support seamless collaboration throughout the software development life cycle.
- How important is security to DevOps?
Back in 2012, Gartner analysts Neil MacDonald and Cameron Haight introduced the concept of DevSecOps (opens in new tab) – the seamless integration of security experts, processes and tools with DevOps workflows. This ensures that security is a priority from the start and at every phase of the development pipeline, rather than bolted-on at the end.
Half a decade later, DevSecOps has become one of those trendy acronyms that receives a good deal of attention in IT publications and at DevOps conferences, but many businesses are still working to find the balance between accelerated development cycles and introducing a mindset that “security is everybody’s responsibility”.
Despite many organisations understanding the value that DevSecOps could bring to their organisation, it’s still a work in progress for some. Getting once-siloed teams to work together and overcome the obsolete notion that incorporating security earlier on and throughout the process can be interpreted as a conflict with today’s need for rapid, agile software delivery.
However, DevSecOps is a critical step for organisations that want to ensure that their drive to continuously deliver innovative new services to their customers doesn’t become their Achilles’ Heel. The Global State of Digital Trust Survey and Index (opens in new tab) found that one third of British consumers have stopped using the services of an organisation because of a breach.
At a time when headline-making attacks have made cybersecurity one of the world’s most pressing concerns, DevSecOps represents the best path forward to address security in enterprise application development. Companies must bite the bullet and embrace this extremely sensible methodology, so it becomes standard operating procedure across industries.
- Nearly half of companies face their biggest skills gap in coding. How is this impacting business’s pursuit of DevOps?
The coding skills gap creates a monumental business challenge as software increasingly underpins business processes – both operations and revenue generating activities.
Companies need to support their developers in working faster and more effectively to meet the continuous delivery demands of their modern software factory. Ultimately, automation will play a key role in helping plug this skills gap, by supporting developers to work faster and more effectively.
- What’s your prediction for how DevOps will change over the next 10 years?
AI and automation will vastly change software development over the coming decade. It’s not only cars that will be self-driving - we’ll have self-driving applications.
Many of the things that are currently seen as housekeeping chores, such as security, integration, and testing and deploying applications, can be powered by data, AI and machine learning in continuous AIOps. By applying a data-driven approach to software, rather than having people define rules that are encoded into the software and upon which the deployed applications then operate, the software could dynamically adapt its behaviour based on what can be learned from its environment.
Moving from deterministic to non-deterministic behaviour will be a significant shift in software development, but ultimately will enable these self-driving applications to maintain ongoing security and functionality management so that developers can focus on value-add activity.
Ashok Reddy, Group General Manager for DevOps at CA Technologies