Agile and DevOps must be good… Everyone’s doing it!
This digital age has created a paradox of opportunity and risk for businesses with the pursuit of innovation and the need to stay relevant, leaving many searching for the silver bullet that provides enterprise agility. Businesses have turned from technology to methodologies and frameworks in an effort to uncover the holy grail of enterprise agility often adopting the latest and greatest thing. This approach has largely been based on prescriptive and closed beliefs that are counter-productive to the business’ ability to respond to change and achieve lasting agility.
Many think that ‘Agile’ and ‘DevOps’ are the answer they have been looking for, the things that will solve all and lead them to the promised land of enterprise agility. The only problem is that neither Agile or DevOps are silver bullets and what works for one organisation, may not work for another. Sorry, there’s no size fits all or quick fixes. Imagine the scenario: if you were part of a team that was tasked with putting together a piece of furniture with only a screwdriver because it was the latest trend. Sure, other companies or even internal teams may have had success using a screwdriver and may have been able to demonstrate business value, but your team is stuck trying to fasten hex head bolts with a screwdriver instead of an Allen key (this is not something that I would recommend to anyone).
Now there’s there a few ways that this scenario can play out:
1. Your team miraculously manages to build the piece of furniture using the screwdriver taking longer and investing much more effort than expected
2. After much frustration your team give up trying to use the screwdriver and use the tools that came with the piece of furniture, again taking longer and investing more effort than expected
3. After investing a significant amount of effort your team gives up and loses all faith in the screwdrivers based on their experience
Regardless of the outcome, many companies in this scenario will tend to blame the screwdriver for failing to deliver business value, with the view that it doesn’t work for us. Then it’s onto the next potential silver bullet.
Does this approach described in the scenario sound familiar? How many companies simply push one tool or one approach, failing to understand their needs? The answer is too many. All-to-often you hear and see companies going all in on a particular methodology or technology. Whether it’s trying to use Scrum for everything, or putting up Kanban boards everywhere, using Chef or Puppet for configuration management, JIRA or Azure DevOps (formerly VSTS) for DevOps, only building Cloud Native or Serverless Apps. This single-minded approach is fraught with perils and does more harm than good, leaving many fits for purpose methodologies and technologies tainted for those involved.
Practical Agile and DevOps
Have you ever been part of a Scrum team that has daily stand ups but no one really knows what anyone else is working on? Have you ever been part of a team using Kanban, where not all the tasks are on the board? I’m sure that we all know of a situation where this has happened. By focusing on the intricacies of each methodology, we are often just going through the motions rather than focusing on the intent behind these intricacies and how they can help us fulfil our needs. Working agile is based on a set of values and principles that help the business respond to change, rather than something that we get right or wrong. ‘Right’ or ‘wrong’ implies that there is an end, but with the pursuit of enterprise, agility is endless.
When talking about DevOps, people will start talking about their favourite tool. You know the silver bullet that will fix everything overnight – you know the one that doesn’t exist. Sure some tools are better than others, but most of the time people talking about tools are doing so from their personal experience. The thinking ‘We used it our last company and it was great’ or ‘All these companies are using it so it must be good’ comes into play and before you know it we’re back to the one size fits all approach.
DevOps is definitely about more than just the tools, but since we’re talking about tools when you are making the decision about which tool to use, it should be based on what will work best in your company.
Some things to consider when choosing tools are:
• Will you be using it for its intended purpose?
• Does it comply with enterprise/company standards?
• How seamlessly will it integrate with existing tools/systems?
• Does your enterprise/company have an existing tool with similar functionality?
• Does it support the working style and capability of your team?
With endless amounts of information at our fingertips and constant articles about getting Agile right, new DevOps Tools or the latest Agile/DevOps success story, taking a practical approach to Agile or DevOps can be challenging to say the least. Our eagerness to drive right in so we can experience the benefits of what might be working for someone else doesn’t end well if we don’t stop and consider our own needs first. There is no cookie cutter approach when increasing enterprise agility, it is an ongoing journey rather than a destination. What might work for the likes of Airbnb or Netflix is not going to work for an enterprise accounting firm or a start-up in online retail. We should take an approach of continuous learning rather than following a prescriptive approach mandated by a particular methodology, framework or technology. This will allow us to find the solution that best meets our needs and delivers the most business value to us and use the right tool for the job.
I hope this article has helped you in your Agile and DevOps journey.
Written by – Keith Jenneke, CEO