The long-term benefits of continuous deployment

676 readers like this.

Agility is an essential component of keeping up with the speed of technology change. However, it comes with a caveat. You can have an IT process that is agile in terms of the development, but if your methodology for deployment or change requests is complicated and unnecessarily lengthy, your attempts at agility might be causing more frustration than innovation. This is where I believe DevOps comes into play – and in particular, continuous deployment, which I see as the ultimate goal of DevOps.

People who have more traditional views on production may also have a misunderstanding that continuous deployment means less testing. But I would disagree. It actually has more automated testing, more regression testing, and more streamlined testing; all of which result in a more efficient process and, as a byproduct, happier employees.

Traditional versus continuous deployment

In a traditional deployment, there may be three or four levels that developers must go through in order for a change request to get approved, then the update gets moved to the staging area, and finally, when the change window arrives, the update is deployed into production. As a customer waiting for a fix or new feature, the long delays can be frustrating, and for developers dealing with unhappy customers, the process can be unsatisfying and time consuming.

Compare that to continuous deployment, where you have a much more condensed procedure that leverages automation and programmers empowered to make changes, test, and deploy infused into the agile process. The obvious and immediate benefits are time and customer satisfaction. But there are long-term benefits as well.

For instance, continuous deployment can lower your overall risk. We're all human, after all, and in a continuous deployment model, if you make a mistake, the solution is just around the corner. That's not the case in a traditional model, where change requests can take weeks if not months to resolve because they go through a complex chain of approvals.

Can continuous deployment create happier employees?

A lesser-known perk of continuous deployment, I believe, is that is can instill more pride and empowerment into the careers of programmers. The work of operations is enriched, because they can be far more proactive in providing a better experience for customers. The development team is elevated by the quality that is experienced in the production environment. By creating more accountability and reducing the amount of resources required to achieve the same value, everyone involved has a higher stake in the outcomes. And that's not only better for employees, but, in my experience, it also makes them happier and more fulfilled in their jobs.

Let's look at a hypothetical example of traditional deployment as comparison. When change requests must go through several layers of iterations and approvals, it creates a backlog between the last release and what is currently deployed in production. This can be demoralizing to those on the design and development side because they see that the customer keeps having the same problem that they already solved, because the fix hasn’t been deployed.

To make matters worse, there is often a lack of communication between all levels, so by the time changes get addressed; they are done improperly – thereby introducing more pain and more risk into the whole effort.

By leveraging DevOps and continuous deployment to ease the frustration of the production process in IT, you can create a culture of innovation and collaboration in which everyone feels empowered to embrace change.

ALSO READ

Maria Azua currently serves Barclays Bank as a Managing Director of Global Infrastructure Engineering focused on IT strategy, design, and solutions. Previously, she spent more than two decades at IBM progressing from engineering contributor to multiple officer level roles leading Cloud, Big Data, and Mobile innovation, revenue growth, and operations efficiency. In addition, Maria is a Digital Advisor providing technology acquisition value due diligence, engineering thought leadership, and talent assessment to boards, CEOs, and venture funds. She is the published author of The Social Factor about igniting the creative process; developed 50 patents on a variety of Software solutions, and a recipient of technical leadership awards from sources such as People Magazine, the Women in Technology Hall of Fame, and the Governor of New York. She has a Doctorate in Computing Science, an MBA, a Master's in Computer Science, and a B.S. in Physics.

Maria Azua is the Senior Vice President of Distributed Hosting at Fidelity Investments. Prior to joining Fidelity, Azua served as a Managing Director of Global Infrastructure Engineering at Barclays Bank, focused on IT strategy, design, and solutions.