For a long time I have been suffering at many companies. I was brought in to do some development work and quickly I found myself doing sysadmin work or improving processes in the company. People kept asking me what am I doing but I did not have a name.
Finally I read an article explaining what is DevOps and I think this describes quite well what my problem was at these companies and what the solution might be.
At least it now has a name.
What is DevOps?
In short DevOps means the cooperation of development and operations for the improvement of the whole company.
Usually developers care about new features while operations care about stability.
That creates a tension and if management does not solve this tension it costs a lot to the company.
The solution - in short and you really need to read the article to go deeper - is both technical and human.
The human part is having the Developers and the Operations talk to each other. Have them in a room and even appointing people - called DevOps - to bridge any gap.
The technical part is mostly automation. Automation of testing. Automation of deployment of provisoning and of rollback.
I know I can handle the technical part - I can automate any part of the system using Perl quite easily - but I have hard time handling the human part. That requires more management buy-in and I think my fees aren't high enough for management to listen to me.
I might need to cooperate with some "organizational consulting firm" to provide a package deal. They tell the client how to get cooperation between developers and operators. I help them implementing the automation part.
What do you think?
How do you handle similar situations?
Published on 2011-08-09 by Gabor Szabo