When it comes to CI/CD and DevOps, the benefits are obvious: Get it right and cleaner code is released (a lot) faster.
But our 2020 Global DevSecOps Survey found more subtle – and far less talked about – benefits. CI/CD doesn't just allow developers to move faster and do more, it also allows them (and their operations counterparts) to do less. The automation required by CI/CD has drastically reduced the manual tasks involved in software development. With fewer time-consuming tasks, Dev and Ops roles and responsibilities are changing, in some cases dramatically.
But don't just take our word for it. We asked our survey takers to tell us in their own words how their roles and responsibilities are changing.
The back story
To understand the impact of CI/CD and DevOps, it helps to have the full picture. In our survey 83% of developers said they're releasing code faster than ever before. In fact, nearly 60% of them deploy multiple times a day, once a day, or once every few days (that's 15 percentage points higher than in 2019). Just in the last year about 21% of developers said their teams added CI to their process, while just over 15% brought in continuous deployment.
The benefits of these processes are clear, the developers told us:
"We've set up automated processes to build, test, and deploy code using a mixture of our own tools and open source tools."
"(We now have) automated tests, automated deployment on code review approval."
"A templatized CI/CD process has significantly sped up build and deploy times to multiple environments in multiple clouds."
"Automated testing using GitLab CI has meant less overhead when reviewing code and quicker and safer deploys."
"Automated testing and continuous integration have made our deployments safer and more optimized. Now everyone in the team has the permission to deploy the code."
"CI and CD tremendously reduced time for build and deploy applications and eliminated problems with the build environment."
"Automation has made one-click testing and deployment possible for us."
"Deployment has become a non-task. Bootstrapping new projects is 10x faster because of the reusable infrastructure."
"We reduced our CI build queue time by 75%, which allowed developers to have test results faster and allows QA to have build artifacts to test faster."
"Automation within the CI/CD pipeline (including test automation and the actual CD automation part) has significantly increased the delivery speed of our team."
One developer shared something that really resonated with us. In the pre-CI/CD world the developer had to submit a ticket to seven different departments before "button press" (deployment), a process that used to take six weeks. Now with automation, it takes just two hours.
Off the list
With all the changes brought by CI/CD we wondered what developers no longer have to do in order to release code. It's safe to say it was a long list! The number one change was no longer needing to do manual testing, followed closely by dropping manual deployments.
"There's no need to manually merge my code and push to staging and then production."
"(We don't have to) sync the code between multiple Devs – Git does it well."
"(I no longer have to) manually test, argue about code style, and update dependencies."
"We don't have to code our product to work with different platforms. We can just code our product and integrate it with a tool to work with different platforms."
"I never create a ticket to ask Ops to deploy."
Devs aren't the only ones not doing things they used to. Operations team members also reported radically changing roles. Nearly 40% said their development lifecyle is "mostly" automated, meaning they're free now to tackle different responsibilities. Over half of them are managing cloud services, while 42% said they're now primarily managing hardware and infrastructure.
This is how they described their roles today:
"We build out and improve the CI/CD platform."
"I'm a Jack of all trades."
"Right now it's 60% new project work and 40% operations/fire-fighting/developer support."
"We ensure reliability and availability, improve developer efficiency, automation, tools, and observability."
"I keep the lights on."
"(I'm responsible for) anything between dev and ops. From planning to deployment but not monitoring and maintaining apps in production."
Lines are blurring
So at the end of the day what do these DevOps-driven changes mean for the software development lifecycle? For starters, roles are blurring. Over one-third of developers told us they define and/or create the infrastructure their apps run on and 14% monitor and respond to that infrastructure – both of these tasks were traditionally the responsibility of the operations team. In fact, nearly 70% of ops pros said their developers were able to provision their own environments.
Dev and ops roles are starting to converge but at the same time developers are doubling down on tasks they consider critical to improving code quality (and thus the speed of code release). Just shy of 50% of developers told us they are now conducting code reviews weekly but a growing body of anecdotal evidence – based on write-in responses – show that for many teams daily code reviews are a reality, something that would not have been possible if they were bogged down with manual testing and deployments.
Going forward, the "free time" created by CI/CD automation won't go to waste, developers told us. A majority want to push their teams to do way more testing of all types (functional, A/B, unit, security) and of course to automate those processes.
What should you be doing that you're not doing now?
"We want to shift left on testing."
"We want to write more test cases to cover 100% of everything."
"We want better code reviews, faster code reviews and more code reviews."
"We should be doing everything better."
Read more about CI/CD and DevOps:
Just getting started? Get our CI/CD guide for beginners