DevOps makes me wonder how different people interpret the word DevOps. When I talk to people from different teams, they have different types of opinions or understanding of what DevOps really means. Or DevOps is a team of developers and operation personnel, or a cultural shift of Agile from the DevOps waterfall, or DevOps is about team monitoring in an agile The way is to distribute the product differently, or, DevOps personnel can perform Dev and Ops roles simultaneously and so on …
I have a different view of what exactly ‘DevOps’ is. DevOps for me works on three main principles ie 3C of DevOps:
Communication: Communication is a bonding agent that binds developers and operations, and other stakeholders, throughout the process. Without a strong shared communication layer in the organization, achieving DevOps becomes almost impossible.
Collaboration: It emphasizes on the performance of the entire system. The importance of collaboration is really important in an industry where they operate in a distributed environment. This should be a natural formation of teams. If something goes wrong, it is really easy to use that collaboration and relationship to really bring that team together.
Culture: Creating a culture that encourages learning and understanding among stakeholders (business, development, operations, security, testing, performance engineering, and other teams that are all involved in delivery).
At this point, to elaborate further – I would like to mention an example from my previous experience.
After a critical production release – where a few glitches were revealed – the blame game ensued. Many developers and many vendors were using this newly deployed backend feature, immediately after deployment – the response time slowed down until the website was fully responding. Developers and vendors were panicking as it was one of the worst conditions.
working fine on all lower environments So this is a deployment issue, we (DevOps) claimed that we have only followed the deployment process and we are not the one who deals with configuration and other systems It changes the backend, so it may be a backend problem, with the backend team alleging that their servers are working fine and working for other environments, so it may be a miss from developers That they did not pack the correct version of the configuration files.
In the end the release manager decided that DevOps would have to troubleshoot this problem.
After going through an intensive period of troubleshooting we (DevOps) pulled out tons of logs and came to the conclusion that one of the backend services was down and the service had to be restarted to overcome this problem.
I think that if the right culture had a place in the organization, the above problem could be overcome immediately, where everyone is committed to the success of the system, not to their individual performance and success.I realized that instead of seeing these teams as individual silos, who continue to hold responsibilities to each other without any accountability for delivery, DevOps recognizes the interdependence of stakeholders and gives them a lower rate of failure Helps to deliver with.
In addition, DevOps also helps optimize with better deployment frequency leading to faster time to market, zero downtime and faster recovery.Another popular topic is whether Agile equals Devo. My view on this is, DevOps has come to praise Agile, it acts as an enabler, which allows DevOps to collaborate with teams to support a continuous flow of work.
In my personal experience, I have seen all this work only when the following qualities are inherited in true essence:
It is very important that the statement “This is not my business” should be removed from your vocabulary. This does not mean that you are going to help everyone for every task. It is either about helping, when you can or pointing them to the right person who can.You must be You should socialize with teams and work on issues together. Think of DevOps as a team sport.It is very important to trust your partner’s performance in DevOps.
The conclusion
In order to change the overall culture of an organization so as to enable continuous evaluation and dynamically adapt to customer and market demands, it is important to adopt DevOps. These 3 principles help teams to create a collaborative DevOps culture that welcomes and accelerates overall delivery.