What is DevOps?

From conferences to articles and books, the term DevOps has taken the IT world by storm. The buzz is understandable, as many IT groups are looking for a way out of the morass of delayed projects, questionable quality and missed deliveries in which they often find themselves.

It’s clear DevOps has potential to address the challenges IT faces. Organizations that have embraced DevOps – including companies such as Etsy, Netflix, Target, Walmart, Ticketmaster, Amazon and Facebook - have shown that DevOps principles can lead to competitive differentiation by enabling teams to deliver higher quality software at the speed required with customer expectations of 24/7 uptime and instant access. As a result, it’s not a stretch to say DevOps is becoming the industry standard for software development.

Why DevOps anyway?

A little more than 100 years ago, the automotive industry was revolutionized by the first moving assembly line. Once industrialization and automation were applied to dramatically reduce the time required to produce an automobile, there simply was no going back. Certainly a few car manufacturers resisted the change, clinging to their existing approach, but the holdouts all eventually adapted or they perished.

Companies that have adopted DevOps principles are innovating faster and leaving competitors behind. So what is the DevOps culture and why do we need it? By changing to a DevOps culture, these companies have aligned all stakeholders – from dev and ops teams to management and more – around the common objective of delivering quality software rapidly and reliably.

Today’s technically savvy customers expect immediate access to the benefits of technological innovation and they’ve grown increasingly intolerant of software that is buggy, unstable or not secure. Customer expectations are driving what is known as the continuous economy, in which customers experience a business through its software and how they deliver it using continuous integration/continuous delivery (CI/CD). In this economy, technology is a business enabler and the ability to reliably deliver quality software is critical.

Organizations will need to transition to DevOps soon to remain competitive in the continuous economy – even to stay relevant. This may sound like hyperbole, but an increasing number of companies are finding out the hard way that almost every company is a software company and that DevOps is a common sense way to gain a sustainable, competitive business advantage. In addition, developers will seek employment at companies where they can innovate instead of fight fires all day.

Even companies in industries far afield from software have found that they need to make software companies part of their core business. Take Ford Motor Company. You may not think of trucks as software, but the Ford F-150 truck features more than 150 million lines of code. A lead engineer on the Ford EcoBoost engine team noted that the “secret sauce” in the success of EcoBoost technology is software.

There is no going back. It’s safe to assume that your more successful competitors will be embracing DevOps sometime within the next five years. The question you must answer is, “Where will your organization be in five years?”

Why you should care about DevOps

Simply put, companies that have embraced DevOps are better positioned to solidify their position in existing markets and expand into new ones. Indeed, adopting DevOps is rapidly becoming the de facto standard for software development. A quick look at industry examples - think Apple, Netflix, Tesla, Uber, AirBnB and many others - reveals early successes and tremendous potential.

Once DevOps is implemented, companies have seen an increase in satisfaction for development process stakeholders. Because they are applying modern software development practices, these companies are attracting and retaining better talent, who will drive further quality improvements, productivity improvements and ultimately success at the company. When developers no longer perform tedious, rote manual coding tasks and are free to innovate and make a difference, they are happier.

A large financial software company saw a 15 percent improvement in employee satisfaction just weeks after adopting CD in support of DevOps principles. Just as important, a happier and more engaged workforce means increased productivity, lower costs and better software.

At the end of the day, any company that needs to deliver quality software faster needs to care about DevOps and the supporting practice of CD, which enable continuously building, testing and deploying software in frequent, incremental releases.

Companies that fail to embrace DevOps will bleed talent and fall further behind their competition, serving as illustrations of the adapt-or-perish maxim that is as true in the software development world as it is in the natural world.  Which company do you want to work at?

What is the DevOps model?

There’s been a lot of talk about what DevOps is and is not, but recent consensus is that DevOps is primarily about culture. Organizations that have adopted this culture value collaboration, experimentation and learning. In a DevOps culture, all participants in all phases of the software delivery lifecycle align around a shared goal: the rapid delivery of stable, high-quality software from concept to customer.

Automation of software development, testing and deployment through continuous delivery goes hand-in-hand with DevOps. Automation enables organizations to deliver software more quickly while ensuring operations can have confidence in what is being deployed, and customers get the quality, security and stability they require.

The DevOps trinity

At its core, DevOps is being about gaining alignment between all software development lifecycle participants on three planes – people, process and tools – often called the DevOps trinity. In this framework, the software development lifecycle is viewed as having upstream (development) and downstream (operations) halves. The two halves are part of the same software delivery process but in many traditional IT organizations these halves are highly disconnected (Figure 1).

                      Figure 1: The disconnect between upstream and downstream people, process and tools.

Upstream, the development culture usually prioritizes speed and innovation, whereas downstream the operations culture is tasked with a focus on maintaining quality, stability and uptime. Upstream, development uses point tools to define and build software using agile methods. Downstream, enterprise class tools are the norm for managing the test, release, deployment and operation of the software.

Downstream meetings are much more likely to be filled with talk of Information Technology Infrastructure Library (ITIL) and Project Management Body of Knowledge (PMBOK) than Kanban and the latest scrum. DevOps is about connecting these worlds and eliminating the chasm that exists between the upstream and the downstream.A look at the “How” of DevOps

Often, discussions on the how of DevOps are too narrowly focused on the technical core of what happens from the time developers commit code to the time software is deployed to a server. In reality, DevOps extends from the initial concept to the customer deployment.

The full DevOps cycle starts with understanding the customer’s needs. Once they are clear, then you create a plan to define a solution, a plan to deliver it and a plan to support it once it moves into operation, where you gather customer feedback and the whole cycle begins again.

     Figure 2: Agile methods, continuous integration and continuous delivery provide the foundation for a DevOps transformation.

DevOps –fad or here to stay?

Anyone who’s been in the software industry for any length of time has seen fads come and go. The buzz for software-oriented architectures (SOA) was all the rage a few years ago, but that buzz faded to a whisper.  Waterfall methods are fading fast, replaced by agile development. How can you tell if DevOps is just the latest in a line of operational strategies that will fade out?According to a Harvard Business Review survey sponsored by Google, 86 percent of the 654 respondents say that it is important to their company to develop and put new software into production quickly. That leaves 14 percent who do not realize that they need solutions like DevOps. At times like this, it pays to step back, take a breath and take stock of where we are and where we are going. When we do, it becomes clear that DevOps is not a fad; rather it is the way successful organizations are industrializing the delivery of quality software today and will be the new baseline tomorrow and for years to come.

DevOps today

When research shows that most companies surveyed are planning to or are already transitioning to DevOps enabled by CD, that speaks to the current popularity of DevOps. In taking a closer look at the companies that have already adopted CD practices and a DevOps culture, many of these companies are the established leaders in their respective industries and hold a dominant market position. Having made substantial, long-term investments in CD and DevOps, they are already seeing impressive benefits. For example:

  • Amazon, the leader in public cloud infrastructure, now releases on average every second

  • Etsy, the leading peer-to-peer e-commerce marketplace, went from deployments that took hours to deploying changes 50 times per day

  • Ticketmaster, the world’s leading ticketing company and one of the world’s top 10 e-commerce sites, deploys to production at the end of every sprint or multiple times per sprint

  • Netflix, disrupter of the entire cable and TV industry and responsible for about 30 percent of North American internet traffic, deploys thousands of times daily

  • Nordstrom, a leading fashion specialty retailer with 323 stores in the U.S., increased the pace of releases to monthly from just twice per year

  • Allstate, the largest publicly held personal lines property and casualty insurer in the U.S. is now delivering new applications in half the time it took to deploy a single new feature

  • Coca Cola, the world’s third most valuable brand, has accelerated project delivery as much as 50 percent and cut defects in production by about half

While some organizations have resisted making a DevOps transition – either due to confusion about what DevOps entails, concerns that it may just be a passing fad or a simple aversion to change – other organizations have jumped in with both feet.

The organizations who’ve made the jump are eager to reap the benefits being realized by competitors and other companies that have already transitioned to a continuous delivery and a DevOps culture. These companies are differentiating themselves and delivering higher quality software faster by aligning development and operations across the DevOps trinity – people and culture, process and practice, and tools and technology. Better alignment across these three planes enables organizations to improve time to production, drive business value and reduce IT costs.

CloudBees drives DevOps, CI and CD

The CloudBees software delivery platform enables companies to automate their software delivery with a layer of visibility and governance all built on DevOps and CI and CD best practices. CloudBees delivers Jenkins for the enterprise with a tested and verified Jenkins core, advanced enterprise features that extend the power of Jenkins, fully-tested updates and professional support for the Jenkins core and all 1,500 community plugins. The flagship offering provides high availability to support continuous delivery processes, as well as simplified manageability, security and scalability of Jenkins to ease administration across distributed Jenkins environments and IT architectures, on-premise or in the cloud.

DevOps customers including Capital One, IHG, Autodesk, Mabl and a host of others can attest to their DevOps transformations using CloudBees products. See what they’ve done by reading their case studies and decide on whether deploying a DevOps model is best for you.

Where will your organization be in five years?

To further answer the question "what is DevOps?" check out the following resources: