Seven Business-Impacting Reasons to Adopt a DevOps Model
In April, Gartner issued its annual CEO Survey report which found that technology-related business change is the number two priority among CEOs, following profit growth. Specifically, Gartner finds that CEOs are pursuing a digital business strategy focused on product innovation (not just innovating how products are marketed and sold), to drive growth and profits. At Flux7, we’ve worked with handfuls of companies looking to apply automation within a DevOps model to achieve product innovation and digital business transformation. In doing so, we’ve unearthed seven common business drivers that when paired with DevOps can drive sustained gains.
While you can’t blindly venture into technology-driven business transformation, the following seven areas can help you understand and identify where technology can have the greatest impact to your organization.
Increase Enterprise Agility
According to the 2016 State of DevOps Report, DevOps organizations are able to issue 200 times more frequent deployments than their peers. As more and more companies see software as a competitive differentiator, increasing developer productivity and output has clear business advantages — especially when the quality of that output grows in parallel.
Increased enterprise agility is achieved through self-serve IT which allows developers to access and self-provision. Moreover, organizations can automate and optimize the code pipeline which delivers a great deal of business value in the process, including lowering development costs,and increasing quality by removing errors that can be introduced by manual processes. We have written extensively on code pipeline automation which you can find here on our AWS blog.
The flip side of the coin from increasing developer productivity is increasing the amount of strategic work IT operations tackles. To do so, it’s imperative that you reduce maintenance and other tactical, repetitive tasks. A sign of having successfully addressed these issues is less time spent on problem and trouble resolution. According to the State of DevOps Report, high performing DevOps organizations not only recover 24 times faster from failures, but they also have three times lower change failure rates. So, with fewer failures and faster recoveries, these organizations are able to spend significantly more time making strategic contributions to the business.
For example, at Flux7 we worked with a Fortune 500 manufacturer where we set up infrastructure as code. In doing so, we were able to decrease the time for server procurement to mere minutes. We also setup scripts for bootstrapping the company’s MongoDB cluster which decreased the overhead of this process from days to 15 minutes.
Increase Information Security
Security is both a prerequisite to DevOps success and a byproduct of it. By building in security and compliance controls, the DevOps model enables continuous auditing, ensuring ongoing security. Moreover, by applying automation, less human error is introduced into the system. Proving the value of this outcome, the State of DevOps report finds that high performers spend 50 percent less time remediating security issues than low performers.
For example, using a variety of AWS services, we can build in security across the AWS architecture. From AWS WAF to IAM and more, a layered security approach with elasticity, redundancy and security controls built in allows organizations to move faster knowing that the foundation is secure. With cloud computing, security can become stronger as policies are not applied but automated. And, we can apply these same principles for continuous compliance auditing to ease the burden and resource requirements around audits.
In addition, containers are becoming increasingly popular in cloud based DevOps environments for their ability to facilitate faster development through a microservices architecture. In addition to speeding code throughput, containers can also make it easier to pass security and compliance checks. In conjunction with the immutable nature of containers, we like to use Hashicorp Vault for static and dynamic secret management; it is especially powerful for these microservices environments where a manual key repository would prove unwieldy and burdensome.
In all, DevOps brings security into the fold by building in security best practices and regulatory compliance requirements and allows for continuous system auditing through automation.
Reduce Cost of Infrastructure
The advantages of automation in reducing costs are manifold. First, teams are able to automate manual tasks, putting expensive human resources on more strategic, business impacting activities. In addition, with automation we can optimize to ensure against idle servers, and we can make the most effective possible use of AWS pricing models, like reserved and spot instances.
With AWS automation, we can closely monitor the assets for use and demand, ensuring that you don’t pay for resources you don’t need. Additionally, services like AWS CloudWatch in conjunction with auto scaling can be used to save costs by only paying for resources when they are needed. For some organizations it also makes sense to take advantage of services that lend themselves to the use of spot instances, which can help you save even further.
According to Information Technology Intelligence Consulting Research, one hour of downtime costs the average company $100,000. With figures like this, it’s understandable why eliminating downtime is a significant driver of new technology adoption. In addition to financial implications, downtime can have serious issues for other businesses such as healthcare or emergency communications services. For firms like these, DevOps automation can play a significant role in building in redundancies, failover and disaster recovery plans to ensure that no matter what happens the service is available to customers.
For example, for a healthcare company, Flux7 chose AWS CodeDeploy to automate new code deployments to any instance, helping avoid downtime during application deployment. AWS CodeDeploy also helps automate service updates, eliminating human error that could lead to downtime. In addition, the DevOps team at Flux7 helped this healthcare organization create a failover environment through the use of two Availability Zones; should something happen to the primary zone, the secondary zone will continue to deliver the service to customers.
It’s hard to overstate the value of scalability to a business, especially one that sees significant peaks and valleys in its traffic. Designing for scalability without degradation of performance or downtime is an essential component of successful service delivery. There are several techniques you can use to apply automation within a DevOps methodology to ensure scalability and with it customer satisfaction.
For example, caching applied at multiple layers allows you take advantage of a content delivery network (CDN) like Amazon CloudFront, which caches requests, so when a similar request comes in, you can serve it without actually touching servers. Because the content is served by the CDN, not servers, this approach is very efficient, highly scalable, and even serves to improve the customer experience. You can also use caching between an application and database. Most commonly used is Amazon ElastiCache which caches regularly accessed data so you don’t have to make a roundtrip to the database. This decreases the number of requests to the database, and as a result is much more efficient, allowing you to serve more users from any size database.
For example, working with Rent-A-Center on its DevOps initiative, we were able to design and build an ecommerce system that saw a 42% increase in traffic — with more than nine million hits — over Black Friday without missing a beat.
Increase Global Reach
Growing your company’s reach can mean different things depending on the industry you are in. For one Flux7 customer, it literally meant being able to reach anywhere in the world as they were supporting ships at sea. However, like many companies, they were seeking to deploy consistent, sophisticated services with consistent uptime and continuous delivery of upgrades around the world. With Docker, Jenkins and AWS as their core technologies, the company is able to build once and run in many places. In conjunction with a new dev workflow, development is now able to create brand new environments for globalization in different countries in hours, rather than the weeks they were used to spending.
When technology becomes central to business success, and a source of competitive advantage, it’s important to invest in that advantage to ensure continued success. For this reason, it’s not surprising that 31% of CEOs reported that digital business growth is their organization’s top strategic business priority this year. Whether or not you are one of the 42% of companies who reported that your new business posture is “digital first” or “digital to the core” DevOps automation can meaningfully and measurably impact your business drivers. For the next steps in your technology-related business change, check out our Enterprise DevOps Framework and Seven Steps to Successful and Sustainable DevOps Transformation. They are helpful guides in applying a DevOps methodology to your DevOps journey.