Is it time to stop talking about DevOps culture?
I made a mistake.
Yeah, I know. What's new right? I like to think that I'm fairly in-tune with my audience when speaking publicly, but this time I wasn't. This time I learned an important lesson about discussing culture, and why like politics or religion sometimes it's better to avoid it.
I gave a presentation to members of my organization on DevOps practices with an emphasis on the characteristics of a DevOps culture. It's a presentation I've given probably 40+ times to regional businesses and groups of graduate students. Typically I reference something like the CALMS model in these presentations, a model which identifies core practices in a DevOps culture like an emphasis on collaboration, shared empathy, automation, and measurement. I always end this presentation with a pithy statement like "when introducing DevOps practices into an organization, building the culture is the hard part."
It's a nice presentation, one that I've honed for the past 5 years. Generally I almost always get really positive feedback and people approach me after the speech to talk about some of the challenges they face in the adoption of DevOps practices in their organizations. But not this time. This was the first time I had ever given this presentation at a company I actually worked for, and I was an insider rather than an outsider. And that made a big difference.
When you are an outside consultant you can come into an organization and say just about anything. Most people will ignore you because they know you will eventually go away and they can resume their normal lives. Students will pay more attention because what you say might end up on a future test. But when you start talking about culture at your workplace, people will really listen and some will begin to erect defensive barriers. It's like meeting someone for the first time and saying "you look nice, but you need a haircut." It might be true, but they will probably think you're a bit of a jerk for saying it.
I'm starting to wonder if we have over-weighted the value of culture discussions in the DevOps community. Are we poking the bear? Is the risk worth the reward? I saw a panel discussion this last week and Francois Dechery, co-founder at CloudBees, talked about how culture is really just a product of our daily activities and habits. We should focus our energy on implementing DevOps practices which drive tangible results rather than trying to figure out which mottos to place on the wall. Our actions will ultimately build the culture we desire.
In the future I'll probably leave discussions about culture in the classroom. But I'll still continue to help organizations build a DevOps culture. I'll describe how to build software delivery pipelines using continuous integration supported by GitHub Actions. I'll talk about using infrastructure definition code to version AWS infrastructure. I'll help a team member fix a non-deterministic automated test. Actions speak louder than any PowerPoint words.
Echoes the findings from the "Accelerate" book (Forsgren): "If you want to improve your culture, implementing CD practices will help" (Ch 3 &4). Changing how people behave (technical practices) drives change in how they think (Culture).
Jason, It's not just talking about culture, but discussing just about anything with "family". You can tell your kids something dozens of times and they'll just ignore you, but if they hear the same thing from outside the family they will pay attention.