Why DevOps is not Automation
What is DevOps and why should you care? At ECS Digital, we believe it’s the principle (or concept/idealogy) of identifying all stakeholders involved in the delivery of software and software services and optimising their organisational structure, working practices, processes and tooling to deliver higher quality software faster. Without it investments in those areas will yield limited results.
Traditionally these stakeholder have been split into two broad groups, Developers (build the business) and Operations (run the business). Hence the term DevOps. The reason that DevOps is important is these groups have historically had opposite goals. Developers are paid to build things and deliver change whereas Operations are paid to keep things running and available to customers.
I encountered the segregation and organisational distrust this results in at a heavily regulated finance industry customer in the UK several years ago. I was working in the development group and had been hired to implement a source code management (SCM) tool. This was to be used no only for the version control of the code but also as a release repository which stored the built artefacts that would ultimately be deployed. The project came to a shuddering halt and the investment to date in jeopardy when we came to the Production team (operations) and were discussing a service that was being run by development needing to be accessible from the production environment. The project could not continue unless the service run by the production team. This was ratified by the CIO of the organisation and two weeks later I was working in the production group and the project ultimately completed. There was no change in personnel and no change in tool, simply a change in reporting lines. Without it the project would have failed!
That is an extreme example but these opposing objectives commonly lead to different methodologies, processes and tools being used for the same activity in each area. Developers configuring automated deployments to non-production environments via a Continuous Integration (CI) tool such as Jenkins but still having to produce a document of steps (runbook) to be followed manually by Operations, service request tickets having to be raised for DBAs to update the database before the app support teams update the application etc. These are very common scenarios. Even customers that are more advanced with their level of automation and have all teams using the same automated tools often find their are manual handoffs between those automated steps as responsibility moved from dev to ops.
Einstein once said “insanity is doing the same thing over and over again and expecting different results”. Our definition of “insanity is doing the same thing in different ways and expecting the same result!” Would you bake the same cake with the same ingredients in the same way and expect the same result?
The business objective is always to deliver higher quality software, faster. It is clear to us that this can’t be realised without breaking down the walls between Dev and Ops. Elapsed time introduced through manual hand offs between teams, risk of failure increasing due to use of different tools and processes for the same activity are a barrier to reaching that nirvana. The culture and structure of companies needs to change to support a unified goal underpinned by unified processes and tools. Automation does not mean you’ve got DevOps! Once the culture is adjusted a focus on the various areas of automation within #DevOps and #ContinuousDelivery will help unlock the potential of your business. Get in touch today for a free devops assessment and to understand how ECS Digital can help you with adapt and adopt DevOps.
Our next article will focus on Deployment Automation and how #Microservices (@Docker) pose more questions than they do answers. Subscribe to this blog or Follow Us on @ECS_Digi / LinkedIn to stay up to date.
ECS Digital are specialists in Devops and Continuous Delivery with offices in London, Singapore and the USA. We help customers adopt and adapt these initiatives for maximum benefit to their business. Our services include strategy and consulting, tool recommendations and implementation, and training. We’ve been working around the world with Finance, Insurance, Telco, Retail, Healthcare customers to name a just a few since 2003.