The Blog of Ben Rockwood
When I first came in contact with the ‘Devops’ movement I thought it was about better systems administration, a maturing of the craft. It was, I thought, more about Ops and less about dev. Dev had their day in the sun with Agile… now sysadmins were getting theirs. Remember, if you can, when Agile came on the scene and how giddy developers got with eXtreme Programming, then Pragmatic Programmer books are everywhere, and then SCRUM comes along, and its all about this ‘lets do the old thing, in the new way’ excitement. Re-inventing the craft for a new age. I thought devops was that.
I’ve been following Ben for a long time, since he was doing podcasts (ps pipe grep!) with the other Joyent
knuckleheads in 2007. I enjoyed reading this post, although it highlights how wide ranging the term “Devops” can be. My background couldn’t be more different. I started by only learning enough system administration to help run the Rails applications I wrote, and now I find myself looking at a trend in the server-side part of the operation that I think is very promising.
It’s not in the form of “what Devops means to me” but my post on Chef
from about a year ago still captures what I think Devops has to offer the rest of the development stack, leading right up to the business. My experience is that the business is the customer of the developers, and the developers are the customers of ops. Successful devops can use either their experience as developers or their knowledge about the depth and breadth of systems to guide the process of putting together a high quality stack to meet business goals on the budget provided. I personally do not share Ben’s fear of having “hot Devops” take jobs from specialists– specialists are part of the team just the same.
With all these differences in approach and background, we still end up with a very similar idea:
As the good news of “devops” spreads it first enlightens, then brings excitement, then dread. If your one of those “specialists”, you can easily feel that your now out-dated. Consider that there is now pride within the devops elite that CIO’s are now talking about having a “devops strategy”. Some even suggest a (I’m paraphrasing) “evolve or die” scenario for operations teams. If your a sysadmin who uses Borne or Korn shell instead of Ruby, look out! I don’t think that’s fair, nor do I think its true for all. Instead, it all makes more sense when you see it as three camps instead of two, with a the culture over the three… that is, applications developers (traditional “dev”), system administrators (traditional “ops”), with a new role in the middle of Systems Engineers that helps glue the camps together. Some of your Systems Engineers will emerge from the dev side, some from the ops side, always having hidden their secret urges to do both. And, as with any emergent role, many will aspire to it but simply not be cut out for it.
I am a “smallest team possible” sort of guy, so I happen to think that considering them three different cultures is a bit much, but I think it should be obvious that more and more recognized roles in engineering are popping up around communication. It’s a good thing!