I just read Walking Skeletons, Delivery Pipelines & DevOps Drills and came to the paragraph about “throwing s.th over the wall:
DevOps – the marriage of software development and operations – means that the team writing the solution code also handles these matters. We don’t throw it over the wall to a separate “DevOps” team.
In the past years I’ve been driving the DevOPS culture and work style. And I just had to smile when I read the article because I can so feel it!
Whenever some new people came to the team and were told that they would not just do “the fancy coding” but also “the intimidating operations”, teh reaction is hardly ever enthusiasm. It usually is fear and concerns.
And I can totally feel that, because a lot of people who never worked in a good DevOPS environment think about the operations part as endless updates, fixing breaking changes, being an call, having to fix bugs and fightig with deployments.
And this is the case if you do not have a proper environent and noone to support in making things robust. In our setup I was in the operations side who didn’t “take over” anything. But didn’t block off work, didn’t leave people alone – we assisted, consulted and offered services. Because the aim is to minimize the overall work for the company, not just for a single team.
We provided templates for deployment pipelines, assisted with monitoring, consulting how to make things more roust, developed frameworks to simplify development, offered services like Renovate to help keeping things updated.
Most of those things were soft guidlines and offers. If a team didn’t want to use it, okay. But please don’t cry if your maintenance efforts will scale faster than others’.
And then I can totally second what Jason Gorman writes at the end:
I see teams doing them monthly, and as they gain confidence, […], while learning how to optimise pipelines to keep them as frictionless as possible.
The whoel DevOPs approach is not a means to harras the Dev team while bringing an easy life to Ops! It’s about optimizing the overall maintenance expenses while enabling developers. And this only works together.
If there is no “together”, there is no DevOPs.