The definition of DevOps keeps changing for a company as it moves from one maturity level to another. As the Digital world keeps evolving, people keep questioning as to what is the holy grail of DevOps principles are and what needs to evolve.
For the uninitiated, DevOps means throwing a bunch of tools to automate a process and problems. So after getting some tools implemented, they think they are Devops enabled without even measuring the success or failure of their endeavour. I.e. did they improve their overall release management, time to market, stability and maintainability, quality etc.?
In the absence of any KPI, DevOps just becomes automation of some steps and gets relegated to just another fad of the year. More so, there are a plethora of tools, which achieve DevOps automation from either the Dev side or Infra side and many of them are expanding their tentacles to the other side to try and position themselves as an end to end DevOps toolchain and one just needs to implement one of them and become DevOps enabled.
Another common discussion point that is not clear to many, is DevOps and Agile the same thing or are they two different things? My opinion is that Agile is a software development methodology and DevOps is a mindset to facilitate Agile Development through a change in Culture, Processes and Tools (and in this order).
When I talk about the DevOps culture of working together, I do not expect the roles of Dev, Ops, Test to disappear into one full stack engineer. I mean that various roles of Dev, Test and Ops work with each other in one team, with the same goals in mind and not work in silos, with different managers trying to provide their own leadership in different ways. That’s why DevOps needs management support to create structures in delivery leadership, to create new rules of engagement and delivery.
This is where I see the biggest operational challenge to proper DevOps adoption in companies. I have seen DevOps either being driven from down in the development teams or right from the C-Level and neither of them spend time in making sure that the new organization roles are created in the middle management who will take this concept, internalize it and then implement it in their teams and then eventually are not able to create the DevOps culture they aspired to create.
Even in some companies, DevOps is a separate team, which works horizontally to support different verticals, which is contrary to the culture of DevOps. To create a winning team needs both collaboration and high level of communication and camaraderie. If culture is supported by the right set of processes and tools then it becomes the DNA of the company, i.e. the way work is done.
More about DevOps Process and Tools in our next article submission…
Watch this space.