What Is DevOps, Exactly?
What Is DevOps, Exactly?
Learn the trends evolving as part of DevOps and how it benefits businesses delivering software to clients.
Join the DZone community and get the full member experience.Join For Free
Is the concept of adopting a continuous everything model a daunting task for your fast moving business? Read this whitepaper to break down and understand one of the key pillars of this model in Continuous Governance: The Guardrails for Continuous Everything.
Everything changes. Everything inevitably evolves. In the IT environment, this maxim is even truer, as the emergence of new technologies and methodologies transform processes much faster than in other areas. This requires an immense capacity for adaptation from Information Technology professionals. It was this demand that gave rise to the term DevOps, which brings together the two main IT activities: development and operations. And now we'll help you understand why the concept has been spreading so fast by companies in the industry.
DevOps is the English term originated from the collision between "development" ("Development") and "operations" (Operations). The concept arose from the union of two IT tendencies: the first is the agile infrastructure, or agile methodology, which consists of an agile and lean approach of the operations of an IT company.
The second trend is the understanding that collaboration between development and operations must permeate all product development cycles. This also concerns the fact that these operations have become more and more important in a service-oriented scenario. In this sense, the text of the Agile Admin brings an enlightening definition of the concept. It comes from Jez Humble, CTO of the DevOps Research Institute: "The term DevOps arises to designate a multidisciplinary community of practices dedicated to the study of the construction, development, and operation of resilient systems that change rapidly — and in scale."
Or, in a less technical explanation: DevOps are professionals working together in the practice of development and operations throughout the entire service cycle — from design to product support.
Getting Started With DevOps
There’s not one path to DevOps – there’s just what works in your organization. Very successful DevOps initiatives have been originated from dev teams and from ops teams, top down and bottom up, from inside the company and from consultants, with widespread education and with skunk work pilots. Therefore it’s hard to give a generic playbook for how you can get it implemented. I think it’s safe to say that it starts with you yourself learning about the values, principles, methods, and practices of DevOps and trying to spread it via whatever channel is most effective – telling fellow techies, getting management buying, just starting to implement things in a more DevOps way yourself and letting success speak for itself… People will try to tell you how things can rise to success in your org, but that advice is usually more policy and wishful thinking than reality. Observe how other popular things in your organization have arisen and gained currency and try those same channels. And keep learning.
Traditional X DevOps IT
Many IT leaders and managers wonder what changes with the emergence of DevOps. Well, the opera summary is this: operations teams will need to learn how to program. Because DevOps practices allow a company to accelerate the availability of apps and services on the market.
According to this article on the CIO portal, this represents a clash with traditional IT conceptions, which do not usually carry the "developer mentality". And with the current overvaluation of the term, it is perfectly reasonable for more traditional IT organizations to be skeptical or even openly averse to it. But it is undeniable: the new times require everyone to be working towards a common goal - this is the basis of agile thinking. And in this process, the confidence generated by the practice of DevOps is paramount.
Trust that as a manager, you really understand that failing at the beginning means accepting more failures - but also confidence that, in the end, those failures will be reduced through more resilience. That's why those with a developer mindset can greatly help improve IT.
Implementing DevOps in Your Business
As we said, DevOps implies combinations of skills. In operations teams that know how to program - not just guru scripts, but the actual programming fundamentals.
To implement the practice in your company, you have to know that there is no specific path - there is, yes, what works and does not work for your structure. Successful initiatives in this field come from a variety of backgrounds: from developer teams, operations teams, top down, bottom up, from within companies, from consultants, etc. Thus, there is no specific "implementation manual". But there is something fundamental, that you, as a leader, learn all you can about DevOps' values, principles, and methods of practice. And one way to achieve this, apart from colleagues who know the subject, is to take online courses.
The DevOps Handbook, by Gene Kim, Patrick Debois, John Willis, John Allspaw, and Jez Humble. The publication was launched in 2016 and quickly became the greatest benchmark in the subject. If you just want a book, go with this one. The Phoenix Project by Gene Kim, George Spafford, and Kevin Behr. Available at this link, the book tells the story of implementing DevOps in a software company that was experiencing various problems.
Continuous Delivery, by Jez Humble and David Farley. You'll find here another great source of inquiries about ongoing delivery and integration. Although the practices do not constitute the totality of DevOps, it is the most important work on the subject.
Opinions expressed by DZone contributors are their own.