DevOps - A Cultural Transformation
Devops isn’t merely technology, it is a Culture. Therefore implementing DevOps is not only adopting a particular tool or language, rather, it is embracing a Cultural shift altogether.
DevOps, at the first impression, is a collaborative effort between the Development and Operation teams. And yes, that was the very idea when Patrick Debois, the father of DevOps, coined the term DevOps (Dev from Development and Ops from Operations). However, now after almost a decade, when its philosophies, best practices, automation tools etc. have evolved so much and ever evolving, we can realize that the initial one-line idea is just the tip of the iceberg.
Cultural aspects of DevOps is a vast topic. Attempting a discussion on it can be really very confusing. “From where to start?” is a daunting question in itself. But, let’s give it a try. In this article, I will attempt to put forth some of the generic aspects of DevOps Culture.
Nurturing a Collaborative Environment
DevOps or no, collaboration can be the real key to success, at least that’s what we have witnessed thus far and also learnt from the multitude of quotes that came from the various leaders from different walks of life. Now coming to “collaboration”, teammates of successful teams of particular disciplines often collaborate and work together towards achieving a common goal. However, the scenario can be much different when there is a need of collaboration between multidisciplinary teams. Understanding the perspective and technique across disciplines may not be easy and seamless even though the teams may be working towards a common goal. But, to achieve a DevOps goal, solving this conflict of collaboration is the one and most essential ground. As mentioned before, embracing a cultural shift is the very basis of DevOps implementation and this very effort of nurturing and fostering a collaborative environment is the first step towards DevOps Culture and should be essentially enforced in the top-down approach. The time to work in silos and stick to a single line of thought is over. Partial success is never going to be delivered and make a difference unless it is done completely from all the aspects. Bringing the expertise from various aspects onto the table and to analyse and resolve a business problem is the way to achieve larger goals, faster than before, and in a futuristic way.
Promulgating a culture of accountability
Now that a collaborative environment is in place and the multidisciplinary teams are working in seamless collaboration bringing the best possible solutions for business problems doesn’t suggest that the journey of the cultural shift is over. There’s definitely more to it. Try finding an answer to the question, “Are the members accountable for the entire deliverable?” Ideally, for a healthy DevOps culture in an organization, each and every member involved in the process should be equally accountable. Every member should be able to shoulder the responsibility in case of any unforeseen technical hindrance that may occur during the progress, and should be able to come forward with alternative solutions and resolutions to achieve the end goal. To cultivate a successful DevOps culture, each and every member involved should be upskilled such that they are empowered and efficient to be able to take end-to-end responsibility of the deliverable to meet the commitment.
Encouraging the perspective of continuous improvement
What is latest today can be obsolete tomorrow!
What is enough today can be negligible tomorrow!
What is standard today can be insufficient tomorrow!
It's a way of the world. And organizations are no exception. However, the perspective of an organization towards dealing with these changes is the real thing that matters.
It's an era of rapid improvement in technologies everywhere. The perspective towards a problem and it's solution changes very frequently. But, we often come across situations where changes are represented as flaws and those in turn result in mental blocks where suggestions of improvements are mistakenly regarded as negative feedback. And this mentality is prevalent in every level of hierarchy in an organization.
It is now necessary to widen the horizon of looking at the so called issues in the present system and implementation and consider them as an expected improvement needed for the hour. Embracing and propagating a culture of continuous improvement in the organization will lead to a new norm of accepting suggestions and opinions in a positive and welcoming way. And the company can actually pace forward towards improvements and better achieve their goals.
Embracing Failures as pathfinders of success
Even after doing everything in the best possible way, something may fail at any point of time during the course of action. And it is unavoidable. The key is to embrace failure, learn from it and use it as a pathfinder of success. A holistic root cause analysis can lead to a better learning of things and the way to improve them further. While fostering a DevOps culture, it is essential to embrace the failures and learn from it to move forward towards achieving a goal.
Cultural shift is not easy. It needs time and patience and should be nurtured dedicatedly. Continuous monitoring on the cultural gap and continuous feedback on the same is very much essential. Enablers play a significant role in the cultural shift to make it a DevOps success rather than a buzzword in the organisation.