Skip to main content

Command Palette

Search for a command to run...

The Devops Handbook Summary Series -2b-How DevOps Solves the Problems

The Better Way

Published
3 min read
The Devops Handbook Summary Series -2b-How DevOps Solves the Problems

In the previous article we had seen the problems that existed before the adoption of the DevOps principles and practices. Let's see how DevOps fixes it.

Breaking the Downward Spiral with DevOps

In an ideal scenario, small teams of developers independently implement their features, validate their correctness in prod-like environments and have the code deployed into production in a quick, safe and secure manner. The deployments happen during the workdays rather than at weekends enabling the folks from Ops to work during normal business hours. Due to fast feedback loops, the effects of the actions is seen immediately. The testing environment is the replica of the the prod environment so there are no last-minute surprises.

Due to automated testing, developers can spot and correct their mistakes faster than finding them six months later when they would have totally forgotten the reason for the code.

Due to pervasive telemetry in the dev and prod environments enable faster detection and redressal of problems assuring that everything is working as it should be and value is delivered to the end users.

Work happens in smaller batches rather larger chunks. Releases are controlled, predictable, reversible and give less stress to those involved. Issues are detected and fixed when they are cheaper to correct and it also produces learnings which need to be documented so that recurrence of the same is avoided.

Everyone can learn constantly and new insights could be gained due to adding and subtracting the different steps as part of experiments.

Instead of fear there is trust and people are rewarded for taking risks.

When issues occur the review is blamless whose aim is to understand the cause of the issue rather than punish the personnel behind it.

Faults are injected into the prod environment to find out how the system fails, in a calculated or planned manner. This enables to make the system resillient.

In this world everyone owns their work and they know that their work matters to the organization because the organization wins in the marketplace.

The Business Value of DevOps

As per the State of DevOps Report by Puppet Labs from 2013 through 2016 the following facts were revealed:

  • The high performers deployed code thirty times more frequently.

  • They were 200x faster than the non-high-performers in changing from code committed to successfully running in production

  • Their lead times were in minutes or hours compared to weeks, months or quarters in the case of the latter.

  • Their production deployments were 60 times more successful than the latter.

  • Avg time to restore service was 168 times faster than the others

  • They were twice as likely to exceed profitability, market share and productivity goals compared to the non-high performers

  • They had higher employee job satisfaction, less employee burnout, better information security outcomes

DevOps Helps Scale Developer Productivity

Increase in the number of devs reduces individual dev productivity as told by Frederick Brook in The Mythical Man-Month

On the other hand, the right architecture, technical practices and the right cultural norms help small teams of developers to quickly, safely, independently develop, integrate, test and deploy changes into production

These practices enable large organizations to achieve the productivity of startups even though they have thousands of devs.

Further, there is an interesting insight in the 2015 State of DevOps - When the number of developers increases in organizations that don't adopt DevOps, the per developer productivity reduces when compared to those that adopt DevOps where the productivity increases.

More from this blog

The Continuous Journey

24 posts