Monday, March 6, 2017

It's Easier to Fail at DevOps than it is to Succeed

Slippery when wet
Since the term DevOps was coined in Belgium back in 2009, it is impossible to avoid the term whether in discussions with colleagues or in professional trade magazines.  And during the years while this movement has gained momentum, many things have been written to describe what elements of a DevOps strategy are required for it to be successful.

Yet in spite of this, there is an interesting data point worth noting: not many organizations feel there is a need for DevOps.  In a Gartner report entitled DevOps Adoption Survey Results (published in September 2015), 40% of respondents said they had no plans to implement DevOps and 31% of respondents said they hadn't implemented it but planned to start in the 12 months after the survey was conducted.

That left only 29% who had implemented DevOps in a pilot project or in production systems, which isn't a lot.

"Maybe it's because there truly isn't a need for DevOps," you say.  While that may have been true if DevOps were around in the beginning of last decade, the consumerization of IT and other types of "instant gratification" technology advances would dictate otherwise.  In fact, in a 2014 presentation entitled CEO Resolutions for 2014 — Time to Act on Digital Business, Gartner analyst Mark Raskino told a group of CxOs in various industries that (paraphrased) they need to either constantly innovate, or they will rapidly become irrelevant.  All it takes is one stumble to be overtaken by their competitors who recognize the need to think like a technology company whether or not they are one.

Let's drill down a bit.  Even though DevOps means far more than application release processes, Agile development methodologies have changed the landscape of software development such that the promote and release functions are now often the bottleneck.  It is here that automation can have the biggest impact, yet many organizations haven't addressed this to its fullest extent.  In a report by IDG Research entitled Market Pulse Research: The State of DevOps (published in August 2013), 36% of respondents said that their release processes were completely manual and 53% said they were only partially automated.  The kicker is that they all recognized that automated application release is a key enabler to the successful implementation of a DevOps strategy.

What is the real problem here?  It would seem that many organizations are looking for ways to successful achieve the nirvana of DevOps when they should instead focus on how to avoid failure.  They are charging forward without protecting the flanks, and as a result they are getting hamstrung.

What are some of the reasons why DevOps can fail to take hold?  While there is hardly the same quantity on the pitfalls to avoid as there is on what it takes to be successful, Cognizant published a great whitepaper containing six key things to watch out for when embarking on your DevOps journey.  These items are on pages 2 and 3, and are a "must read" even if you're already immersed in implementing DevOps at your organization.  Another great article published in Computer Weekly discusses the business and technology challenges when implementing DevOps.  From the article, "for enterprises entrenched in the old way of software development, adopting a DevOps style of working isn't going to be easy for CIOs without buy-in from the whole IT department."

I could not agree more.  Focusing on the goal is fine, but for something that requires such a huge shift in the way multiple departments work it needs to be recognized that there are many more ways to fail than there are to succeed.

2 comments:

  1. Learn DevOps Course from Courseing expert DevOps Trainers through Online and classroom training sessions in Hyderabad. In this course we would be covering Linux fundamentals, AWS, DevOps tools like Git, Chef, Jenkins, Puppet, Docker, Maven in advance. Connect with DevOps training experts in your locality at Courseing.
    Regards
    DevOps Online Training in India
    DevOps Online Course
    DevOps Training Institute in Hyderabad
    DevOps Institute in Hyderabad
    Online DevOps Training

    ReplyDelete
  2. and for sure there are various devops engineer job description blog entries concerning Docker as of now. In this group,..

    ReplyDelete