About DevOps
More and more developers are getting involved in DevOps, with an eye on the ultimate DevOps end goal – to streamline the software delivery process.
Although lacking a widely-accepted, universal definition, DevOps is in essence a set of practices that enable developers to release small but frequent software updates, reliably and safely. These practices are supported by a broader DevOps culture: activities, technologies, and dedicated platforms which work together to achieve the overarching DevOps goal: to streamline the software delivery process.
In this short blog post, we’ll be sharing some key highlights from our latest global survey wave and the answers of 14,000 developers who responded to questions related to DevOps between December 2021 and February 2022. Also, we’ll be looking at findings from the “Who is into DevOps?” chapter of our 19th Edition State of the Developer Nation free report.
If reading this leaves you wanting to dive deeper into our DevOps insights, we are happy to let you know that we have extended our DevOps research to provide answers to questions like:
The DevOps technologies and new tools developers have evaluated, including the top vendors: Atlassian, AWS, Azure, GitHub, GitLab, Google Cloud, Heroku, JFrog, Oracle
The specific DevOps products or plans developers are using
How application security is handled across organisations
Which vendors’ application security tools they are using
The processes developers use to secure their cloud-native applications and
Developers’ top security challenges
If you or your team are working on answering these DevOps questions, we will be happy to help you. Just get in touch.
What are the latest insights on DevOps?
In our latest report “Landscape and trends in DevOps” we look at the current landscape and trends within DevOps from the developers’ perspective. We aim to understand who these developers are, look at what DevOps activities they’re involved in, and whether increased DevOps adoption really leads to higher software delivery process performance.
Here are the main highlights from the analysis:
77% of the surveyed developers are involved in DevOps
Involvement in multiple DevOps activities/technologies is predictive of higher software delivery performance
The average number of DevOps technologies used by DevOps practitioners has increased from 4.2 to 4.6 from Q3 2021 to Q1 2022.
The last highlight means that the number of technologies used by DevOps practitioners has increased by nearly 10%. But DevOps practitioners are gradually exposed to a greater depth of activities too. Looking at each DevOps activity separately, we can see a significant increase in involvement across the board over the past 6 months:
You can download the full preview of this report here or contact us to access all insights.
Who is into DevOps?
To answer this question and the ones that followed it, we asked developers whether they are involved in any of the activities that commonly fall under the DevOps spectrum, ranging from continuous integration and deployment to application and infrastructure monitoring. For the purposes of this blog post, we only consider developers who are professionals in at least one of the software areas they are active in. All the insights in this section come from our State of the Developer Nation 19th edition which was published on Q3 2020. You can contact us for all the latest insights.
The first thing to note is that the adoption of DevOps practices is widespread among professionals, perhaps even more so than one might expect, given that the DevOps movement is relatively new. According to our data, the vast majority of professional developers (82%) are involved in DevOps in one way or another. For perspective, just over half (52%) of non-professionals are involved in any of the DevOps activities on our list.
The vast majority of professional developers are involved in DevOps, but do not necessarily consider themselves DevOps practitioners
On a separate view of engagement with DevOps in our survey, only one in five developers reported working on DevOps when they were explicitly asked about their involvement in several emerging areas, including blockchain applications and quantum computing, among others. Even if we include those who said that they are learning about or are interested in DevOps, no more than 65% consider themselves to be engaged with the area. This signals that a large portion of the developer population has already adopted DevOps practices but does not necessarily self-identify with the term.
Focussing on the individual steps of the DevOps lifecycle, we find that developers are first and foremost involved in the fundamental activity of releasing frequent but small software updates. The most popular development process related to DevOps is continuous integration (CI), practised by 40% of respondents. Another 37% use continuous delivery or deployment (CD), which expands upon CI by automatically deploying all code changes to staging or production environments.
However, full automation of the software release process – and therefore true commitment to the DevOps culture – is far from a reality. While more than half (52%) of developers use CI or CD to streamline parts of their workflow, only 25% use both practices to automate all steps between integrating code changes into a central repository through to production deployment. As it turns out, developers are still sceptical about fully automated CI/CD pipelines. This is evident by the fact that nearly 40% of them manually give the green light for code deployments to be promoted to production.
Application and infrastructure monitoring, performed by 39% of developers, is one of the most common development practices, but not so much infrastructure provisioning and management (27%), which is still the realm of IT managers and system administrators. Similarly, creating automated tests (25%) and building CI/CD pipelines (23%) are rather specialised tasks, carried out predominantly by quality assurance professionals and solution architects, respectively.
Talking about organisational roles; our research reveals noticeable differences in the level of DevOps adoption, i.e. involvement in any DevOps-related activity, depending on the title that developers hold. First of all, technical company leaders – CIOs, CTOs, IT managers, and engineering team leads – report the highest level of involvement in DevOps activities. Not only do almost all developers with a technical leadership function, about 95% of them, have at least some participation in the DevOps lifecycle, but they are also simultaneously involved in a higher than the average number of DevOps activities (three vs two).
Programmers have largely adopted CI/CD processes, but not so much other DevOps practices
The next tier of the DevOps adoption ranking is mainly occupied by specialist roles, such as network security engineers, QA developers, and system administrators. Between 86% and 91% of developers holding these positions are in some way associated with the DevOps culture. We should note, however, that only architects – system, solution, software etc. – appear to be heavily involved in all phases of the DevOps lifecycle. All other specialists are primarily focused on activities relevant to their expertise. For example, system administrators are naturally focused on infrastructure provisioning and monitoring, whereas QA engineers create automated tests for CI/CD pipelines more than anything else.
Front-line coders and software developers, who represent the majority of respondents in our survey (61%), are also highly likely to be involved in DevOps activities – 81% of them are although not more often than the average professional (82%). Our data suggest that software developers are keen to adopt CI/CD processes, but not so much operational practices such as monitoring applications in production environments. Again, this indicates that the complete shift to the DevOps culture has not yet been achieved. Apart from responsibilities central to their role, programmers are not accountable for additional product lifecycle phases.
Another important indicator of the level of engagement with DevOps practices is the software sectors that developers are involved in. As with roles, we see some interesting variations in DevOps adoption across sectors. For example, close to 90% of developers who create extensions for third-party ecosystems or backend services are into DevOps, as opposed to less than 80% of game developers.
That is partly explained by the extensive coding experience required to implement the DevOps model. We know from our data that DevOps practitioners are far more experienced coders than developers who are not involved in any DevOps-related activity. And developers working on apps for third-party ecosystems, backend services, or industrial IoT projects are among the most experienced in the software economy: up to 85% of them have three or more years of coding experience. In comparison, no more than 73% of game developers have the same level of expertise.
Nonetheless, we find that desktop app developers report relatively low adoption of DevOps practices, even though they are highly experienced professionals – 82% of them have at least three years of experience in software development. This points to limited alignment with the key benefits of DevOps more than anything else. Desktop applications typically receive updates at a lower frequency than applications running on other environments, e.g. servers. Therefore, the fundamental DevOps strategy of releasing small software updates at high velocity is not entirely applicable to desktop application projects.
In conclusion, DevOps signifies a cultural shift whereby developers from different teams work closely together with an aim to deliver software faster and more reliably. The practices of the DevOps model are already widely adopted among professional developers across software sectors and organisational roles, although with some significant variations in the focus on specific activities. These variations reveal, in some cases, that true commitment to the DevOps culture is not yet achieved; many developers are still focused on the core aspects of their role instead of assuming responsibility for additional phases of the product life cycle.
Want more DevOps insights? Get in touch and we can work together on all the questions you need to answer to optimise your strategy.