I attended and spoke at the excellent DevOps Conference in Munich in November 2017. While I was there, I was interviewed by the conference organisers about common DevOps hurdles and how to overcome them. Here is the interview and my responses:
DevOps is not always easy to grasp. It is a mixture of processes, tools, cultural behaviors, etc. What is the most important aspect of DevOps for you?
The most important aspect of DevOps for me is to build a culture of learning and trust to enable flow and fast feedback. Everything else, including cloud automation and Kubernetes, is secondary.
From your experience: What are the most common hurdles that prevent teams from working together?
The lack of a shared purpose of mission is a real blocker to getting teams to work together. A lack of trust also is a problem. If the teams do not understand why they are expected to work together, they can often resent the “intrusion” on their time.
Can you give us some tips on how to overcome these hurdles?
Give the teams a common purpose, at least for a period of time. Give the teams time, space, and even some money for food and drink to facilitate them in working together. Support the teams as they begin to learn to adapt to the new, collaborative way of working. Celebrate their successes.
In your experience, is DevOps a top-down process? Or can it start at team level?
A successful DevOps transformation needs direction, vision, and unblocking from top, but also energy and activity from the teams. Crucially, it also needs the middle managers to understand how they will fit into the new ways of working, otherwise they tend to block the changes through fear of losing influence.
What is the core message of your session that everyone should take home?
Improving the operability of modern software systems takes time and focus from teams but there are some tried and tested techniques for improving operability like Run Book dialogue sheets, healthcheck endpoints, user personas for Ops people, correlation IDs, and logging with Event IDs.
Read more about software operability in the book Team Guide to Software Operability by Matthew Skelton, Alex Moore, and Rob Thatcher.