Category Whitepapers and Guides
DevOps is making its presence felt more and more profoundly in organisations across many different industries all around the world. But what is DevOps, and why should you care? Organisations adopting DevOps have one thing in common: the desire (or requirement) to deliver new or updated software or software services to their customers more often and more reliably without incurring additional cost. This, in essence, is what DevOps is all about – at ECS Digital, we believe that it is the principle (or concept/ideology) of identifying all stakeholders involved in the delivery of software and software services, and optimising their organisational structure, processes and tools in order to achieve this result. One component of achieving this is automation, and it’s certainly an important part. However, there’s much more to DevOps than just automation and in this blog we’ll take a look at why DevOps is more than just automation.
Traditionally, the stakeholders in software and software services are split into two broad groups: Developers, who ‘build’ the business, and Operations, who ‘run’ the business. Of course, there are other teams that are integral in the process, including the Quality Assurance (QA), Infrastructure Developers and Security Engineers, but for the sake of convenience, the term DevOps refers to the unification of culture and working practices of all stakeholders, not just Dev and Ops. This is important because these two groups have historically had opposite goals: Developers are paid to build new things, innovate, and deliver change – whereas Operations are paid to keep things running as smoothly as possible and ensure the product or service is available to the end customer. There is a multitude of software that facilitates infrastructure automation, continuous delivery and much more that many people refer to as ‘DevOps tools’, and these all play their part in bringing Developers and Operations closer together, but they aren’t the central focus of a DevOps transformation. Unless cultural and organisational disparities are addressed the delivery pipeline will be automated to the point of the boundary between development and operations significantly diminishing the benefits.
In his excellent article on O’Reilly Radar, Dave Zwieback talks about the value of Inclusivity, Complexity and Empathy in a DevOps implementation – a concept that he’s cheekily coined in his very own acronym, ICE. In his article, Zwieback points out that a significant expansion of the DevOps community is underway, and mentions that an overwhelming portion – between 80% and 90% – of attendees at recent DevOps meetups have been first-time attendees. The community has indeed moved a long way from its beginnings in agile systems administration at the Netflix and Etsy’s of the world. It has however retained its openness, which is not surprising due to its foundation in collaborative culture. In turn, this has resulted in DevOps being more fluid and less defined. What is tangible however is that an increasing number of organisations are coming to realise the value of DevOps, due in large part to the organisational and cultural benefits that it brings.
Zwieback also draws attention to the fact that DevOps is becoming increasingly necessary in meeting the mounting expectations of software companies in today’s technological landscape. In addition to the fact that software is becoming ever more complex, end-users expect increasingly rapid delivery and more responsive service than ever before. Having a team that works well enough to handle the burgeoning pressures that come with delivering software in the modern marketplace requires excellent management skills, and in this sense, a good manager is – in a very real sense – an invaluable DevOps asset. The best managers can improve the delivery of software and encourage better staff performance just as well as the best ‘DevOps software’ on the market, however both will ultimately be constrained by organisational structure or culture. The realisation of these constraints and their impact was the birth of DevOps. Making sure that you keep coaching new ‘Top Players’ in your organisation ensures that you always have a top team without over reliance on individuals.
To sum up, let’s come back to what we consider as close as one can get to a concrete definition of DevOps: identifying all stakeholders involved in the development of software or software services, and optimising their organisational structure, processes and tools to facilitate faster delivery of better software. Automation is an important part of that process, but it’s by no means the be-all and end-all. An effective DevOps transformation takes a holistic view of the organisation and identifies any elements of the structure or culture that may impede the processes involved in software or service delivery. Once these are addressed, effective processes and tooling are implemented to maximise throughput and quality.
ECS Digital is a DevOps consultancy with 12 years’ experience implementing DevOps solutions for companies all around the world using both enterprise and open source tools. If you’re interested in finding out more about our approach to DevOps and the unique insights we can offer into what makes a DevOps transformation successful, download our free guide to DevOps Culture.