Companies have found DevOps to be a revolutionary way of releasing software quickly and efficiently while maintaining a high level of security. Not all DevOps implementations are created equally, however, and according to the Puppet Labs 2016 State of DevOps Report, there are clear differences in the methods of the high performing businesses and the low performers.
The key findings in the report include:
- High-performing companies have greater throughput than low-performing companies
- High-performing companies have greater employee loyalty than low-performing companies
- High-performing companies spend 22% less time on unplanned work than low-performing companies
- High-performing companies spend 29% more time on new work than low-performing companies
- High-performing companies spend 50% less time fixing security issues than low-performing companies
So how can your company become a high performer? Here are three things that sets higher performers apart, according to Puppet Labs.
According to the report, Etsy, the online marketplace for handmade goods, deploys up to 80 times per day. Larger companies like Amazon deploy thousands of times per day. They do this by using agile deployment practices. Agile enables developers to ship frequently—200x more frequently, according to Puppet Labs—by practicing early delivery and continuous deployment.
The time that it takes for code to be deployed at either company is less than an hour and their lead times are up to 2,555 times faster than companies not using agile deployment, keeping them on the cutting edge of their respective industries.
You don’t need to own a billion dollar company to achieve this astounding speed of delivery however. The secret to their agility is attributed to:
- Breaking up major releases into small releases that are more frequent through lean product management
- Using trunk based development instead of the branching model so that all developers can commit to one shared branch under source control
- Moving from a time-consuming waterfall model to maximized agile software development
- Automating any processes that can be automated
Where once most teams divided work on a departmental basis, the creation of DevOps has broken down those barriers. Everyone—from those working in information technology, to information security, to developers and operations—they all have a common workflow where all actions are shared and kept open. This kind of interaction and teamwork does not come easily.
Team integration is a slow, but important process. It, too, can be broken down into steps:
- Include all teams in daily reporting and demos. This keeps everyone apprised of all activity, even if it’s seemingly less relevant to certain employees
- Obtain requirements from all departments and incorporate them within automated testing
- Have all departments share a common set of tools. Aside from being a helpful tool for software development, JIRA can also serve to get all workers on the same page
Workers at high performing companies are invested in everything they do. A sense of ownership over entire projects creates a feeling of responsibility that increases employee satisfaction. This serves as an incentive for a loop of excellence that results in high quality code and quick incident resolution from all parties. This translates into a team that is constantly creating superior products and experiences.
While the concept may seem simple, perfecting it can be the difference between a high-performance company and a low-performance one.
How does your company rate, based on the studies published in the 2016 State of DevOps Report? Share your insights below!