What is DevOps?
A little bit of history repeating
My first job in IT was Computer Operator with a company that had a Sperry Univac mainframe system. My primary objectives were to keep the infrastructure available and stable to the users during the day and then in the evening to run a series of batch jobs to process information. So, the first goal was to resolve all incidents during the day and then in the evening do backups, processing jobs and print thousands of pages of reports and distribute them around the company.
The operations mantra was “If it’s not broken, don’t fix it!”. We were really good at that.
When I started to get involved in projects I started to talk to some other people in IT that were down the corridor. We rarely saw these people in Operations, but we were aware of their existence because every now and then one would appear with a new piece of code for an application. This would invariably mean a change to the operational environment, new procedures to follow and inevitably upsetting our daily routines and worse case scenarios involved putting the live infrastructure under threat.
This part of IT was known as Development and the mantra was “If it’s not broken, lets change it!”. They were really good at that.
So we had this inherent conflict going on between these two parts of the service that really should have been working together but Development saw Operations as the blockers to change and Operations saw Development as always disrupting everything with little regard to the day to day delivery.
Over my career moving from one company to another I’ve found this conflict in many IT departments and one of the challenges I’ve found as a project manager trying to introduce change from development into live operational areas is to get these two groups of people to work together. I’ve deployed many techniques to accomplish this and some of the Lean and Agile thinking has certainly helped to setup more collaborative working teams that helps to overcome the barriers this conflict introduces.
It’s from this collaboratively working environment that DevOps has its beginnings.
DevOps as a term is simply a joining together of the words Development and Operations and reflects the principles of working together to accomplish our goals as an IT service that delivers real value to the business
It’s is not yet another framework, in fact we still need our ITIL®, PRINCE2®, Agile working and others to make DevOps work. It’s just that we deploy a set of working principles that brings IT departments closer together to work more collaboratively so not only do we keep a stable and live infrastructure for the users but we also a very fast iterative development cycle that brings real benefit to the business.
Speaking of the business we have also seen that historically their involvement has been at the Development level but as Agile project working methods have introduced the concept of including business representation at the team level then then business has seen more exposure to the operational environment. This has helped with decision making across those project environments to be more business focused and helped expand the knowledge awareness across the whole service.
All of us are better than one of us
DevOps has picked up on these techniques and principles and shows us how we can deploy this way of working across our entire service delivery. It looks at our IT as a flow much like the manufacturing process through a factory. It gets us to identify bottlenecks in the IT services and encourages us to look for ways around these constraints. It encourages a fast, iterative development cycle with small batch sizes, so we can deploy change quicker with faster benefit realization to the business. Continually challenging the status quo and encouraging a culture of continual experimentation and learning even going as far as to randomly introduce incidents to our infrastructure to challenge resilience of our service.
Its introduction over the last few years has seen a transformation in the way IT service is delivered for organizations that have adopted it. Instead if IT being seen a necessary evil by the business, DevOps encourages a more holistic approach encouraging Development, Operations and the business to work together so the strategic goals of the organization have a much better chance of being achieved.
Russell Parker MBA