What is DevOps?
There are many definitions of the word “DevOps.” Is it a movement? A new process or technology? A job title? Or just a way of thinking?
“DevOps” as a term was first coined in 2009 by Patrick Debois, who became one of its chief proponents. Simply put, DevOps is a combination of software development and operations—and as its name suggests, it's a melding of these two disciplines in order to emphasize communication, collaboration, and cohesion between the traditionally separate developer and IT operations teams.
Rather than seeing these as two distinct groups who are responsible for their specific tasks but don’t really work together, the DevOps methodology recognizes the interdependence of the two groups. By integrating these functions as one team or department, DevOps helps an organization deploy software more frequently, while maintaining service stability and gaining the speed necessary for more innovation.
And, in the end, everyone is able to deliver the best results and overall experience possible to the customer.
Your handy-dandy DevOps explainer
Just learning about DevOps? Read our step-by-step guide for what it is and why it matters for your digital business.
Extending the Agile movement
A few years ago, critical thinking on many converging methodologies—including Agile, Operations Management (Systems Thinking and Dynamics), Theory of Constraints, LEAN and IT Service management—all started bubbling up in conferences, talks, and Twitter (#devops) debates worldwide. These conversations eventually became the philosophy behind the DevOps movement.
Agile software development paved the way, steering away from the waterfall method of software development toward a continuous development cycle. But this didn’t include the operations side, so while development could be continuous, deployment was still waterfall-oriented.
In a DevOps environment, cross-functionality, shared responsibilities, and trust are all promoted. DevOps essentially extends the continuous development goals of the Agile movement to continuous integration and continuous delivery. In order to accommodate these continuous releases, DevOps encourages automation of the change, configuration, and deploy processes.
DevOps for a cloudy world
The DevOps model found initial traction within native digital businesses. With modern applications running in public and private clouds, much of what was once considered infrastructure requiring manual processes now runs with highly automated processes for making changes and scaling applications.
Sites with massive traffic numbers—like Google, Amazon, Twitter, and Spotify—are all known to do deployments many times a day (or even minute). In order to deploy that often, you have to know you’re not going to break what’s already working or that a change can be undone easily. DevOps helps ensure frequent deploys with a low failure rate.
Companies of all sizes are beginning to implement DevOps practices, and many shops, particularly lean startups, have been “doing DevOps” without calling it DevOps for quite some time. One example of a DevOps success story is media conglomerate Hearst Corporation, who built a next-generation digital platform and continue to innovate by employing DevOps principles.
The many benefits of DevOps
More deploys. Faster issue resolutions. Improved stability. Better collaboration and alignment. There are plenty of pros for doing DevOps.