When we talk about DevOps, we always think about tools and automation and do not give attention to the most important thing, the culture.
If we see DevOps only as a bunch of tools, we’ll have a big problem and often take the project down the hole. DevOps Culture is important for everyone involved in a project. From sharing the same sense of responsibility, ownership to sharing of information.
We need to realise, that you get that responsibility from the moment you write your first line of code for the application, tot the moment where it will be in production and accessed by our customers. It doesn’t end for the developer when the software is delivered to production environment, same way it doesn’t begin there for the people working on operations. Both are working on the delivery from the beginning. After all, when we build software, we need to understand things go beyond code itself, for example where it will rotate, architecture, possible infrastructure limitations and most importantly the instrumentation.
The instrumentation is so critical, because when our client is accessing the application, we can see and understand the behaviour of it. It’s not enough to only have the software running in production, we need to know if it is meeting the needs of our customers, what the business wants and whether our infrastructure is suitable for its execution.
The feeling of ownership is important for the company, but also for the developer. Will explain why!
We have to understand that what we build says a lot about us.
What you build, says a lot about you. For a developer, the construction of software should be seen as a painting, a work of art. You wouldn’t like to have your artwork, with your signature at the bottom, exposed in some museum being criticised by those who saw it for being a sloppy, bad or poorly presented work. Why would your software be different? Take responsibility for what other people say about your code, have pride in your work.
The same thing with operation, be proud to say that for months there has been no unavailability. Be proud to say that today the devs have the freedom to deploy in pre-production environments without their intervention. Take pride too, no one wants to be remembered on account of their environment unavailable right at the most important moment for the business. Imagine you being remembered by friends and family that you work at that company that was unavailable during a Black Friday, for example. Work to be proud and say with confidence that you were part of that project or that certain software or solution was built by you.
That’s your art!
Sharing information is essential for all of us to feel part of the project, an integral part of the work. Sharing information, transparently and centrally, is critical so that we can all see how and where we’re going. We should not share only good news, we must share all the news, including the bad ones. A clear example of sharing information is post mortem and it cannot be a reason for shame or to point fingers. The post mortem is important so that we can give react to the incident and so that we can show to the other members of the projects that we understand what happened and we already have an execution plan. For a long time, the post-mortem was a moment for shame, causing big discussions between the teams to know who should do it and have the responsibility to fill it and present it. They knew that it would be grounds for judgments and pointing fingers. We have no more room for this. We are on the same boat and we need to behave as such, the success of the other is your success also.
So always when you talk about DevOps, try to talk about the culture too. How important it is for us to actually have an DevOps environment, with tools and processes. Especially when the culture is being developed in the company’s day-to-day and it is precisely here where managers should spend more time and act with emphasis, because it is vital for other gears to work well.
This is the first article in a series that I will write here about DevOps, bringing some of my experience of almost 10 years working in DevOps environments in large companies in Brazil and abroad, such as Walmart.com and ERIKS Digital.