Virtualization Technology News and Information
Article
RSS
Developers want code-quality assurance without the responsibility of building deployment pipelines

By Adam Frank, SVP, Product & Marketing at Armory

To produce great code, software developers need assurance their application works properly and is deployed correctly. What developers don't need is the responsibility of building and maintaining the pipelines - an effort providing no business value. Operations and platform engineering teams should manage deployment platforms that provide declarative and as-code experiences.

With the rise of DevOps, the boundary between a developer and a tester has blended to make quality and stability everyone's responsibility. DevOps teams emerged as the demand for software updates grew to accelerate deployment velocity and improve the four golden signals (latency, traffic, errors and saturation). Melding development and operations provides many benefits - including improved development speed - but can stretch developers too thin and create bottlenecks. After all, development and operations require separate skill sets.

Let's explore how automation can enable collaboration between dev and ops to enhance software development while maintaining role differentiation and providing developers with the assurance they need.

Provide assurance with automated deployment

It's no secret that devs don't necessarily want to practice DevOps - just because they can doesn't mean they should. Developers create competitive advantages by writing quality software, not with their ability to create infrastructure and manage pipelines. Herein lies the benefit of continuous testing, monitoring and deployment orchestration.

In traditional processes, development teams review changes incrementally, which can lead to complex fixes due to an issue being caught late in development. Yet manually testing each individual code change is out of the question. Continuous deployment solves this problem. This strategy automatically tests each change - including new features, configuration changes, bug fixes and experiments - and ships code to production safely and securely on each commit. With automation, teams can catch errors and bugs quickly before they become major issues and reduce the time to make new features available to customers.

Continuous deployment's orchestration that connects automated testing lets developers focus on innovative code rather than running tests and fixing bugs. The process also provides the assurance developers crave without them having to spend extensive time on operations.

Continuous deployment's accelerated feedback loop

Developers need a continual flow of information to improve software and prevent change failures. The Uptime Institute found 60% of failures cost businesses at least $100,000 each, and nearly 40% of organizations reported an outage caused by human error in the last three years. Automated deployment removes the variability of manual processes to give developers confidence in deployment. Releasing updates becomes reliable, predictable and repeatable.

Automation and orchestration also makes deployment less labor-intensive and less risky. With fewer required manual tasks, teams can push out even small changes. Progressive deployment strategies like Blue/Green and Canary limit a code change's blast radius by running regular tests to pinpoint problems before advancing the code. The process allows easy rollback to known working versions while developers solve the issue and quickly redeploy updates.

The faster your team deploys software, the sooner you receive feedback. The information empowers developers to fix bugs, incorporate user input and create new features. By quickly responding to changing market needs and software issues, you foster a reputation for innovation and customer responsiveness, increase efficiency and reduce costs to gain a competitive advantage.

Many teams still run manual tests

More than half of developers report too many manual steps in their deployment process. Despite this frustration and the automation tools available, 46% of organizations manually monitor application health metrics after deployment, while only 37% use automated Canary analysis.

As software development becomes more complex, developers deal with dozens of processes, constantly changing technical specs, higher expectations, exponentially increasing feedback and many other coding challenges. While it may once have been feasible to make developers responsible for production, this practice is no longer viable. We must get developers out of the deployment business and back to writing software. Continuous deployment provides devs with the feedback they need without the requirement of managing the entire process.

##

ABOUT THE AUTHOR

Adam Frank 

Adam Frank is a product and technology leader with more than 20 years of Development and Operations experience. His imagination and passion for creating development and operations solutions are helping developers and innovations around the world. As Armory's SVP, Product & Marketing, he's focused on delivering products and strategies that help businesses to digitally transform, carry out organizational change, attain optimal business agility, and unlock innovation through software.

Published Thursday, March 09, 2023 7:30 AM by David Marshall
Filed under: ,
Comments
There are no comments for this post.
To post a comment, you must be a registered user. Registration is free and easy! Sign up now!
Calendar
<March 2023>
SuMoTuWeThFrSa
2627281234
567891011
12131415161718
19202122232425
2627282930311
2345678