Many large enterprises launch small DevOps initiatives within certain departments but subsequently find that scaling DevOps across the organization to enable meaningful and true digital transformation faces a number of challenges that must be overcome.
We face challenges in our environment based on our past decisions as well as our current objectives. If we approach these problems from the individual, team and organizational level, we can successfully assess, plan and overcome them. Indeed, the key challenge to adopting DevOps is, in essence, scaling challenges. The barriers that can exist at various levels get magnified with history, impacting how we approach the various inflection points that occur in organizational lifecycles.
Sometimes, we need to reevaluate current processes and backtrack. Sometimes we need to be slow and careful in our approach. At other times, we need to be quick and dynamic. Success comes with continual practice, and learning from mistakes. We have to take a look at the situation and make a decision.
Scaling successfully is the art and science of realizing with and how to change direction as necessary to navigate the ever-changing environment. Just as with outdoor climbing, there are no marked colorful routes that will guide your way for your particular circumstance. Leveling up the necessary individual, team and organizational skills will prepare you and the same basic principles of DevOps will apply regardless of organizational size and complexity.
Some of the challenges that we regularly observe when DevOps is scaled across enterprises are listed below.
Lack of Sponsorship
In order for DevOps to succeed throughout an organization, the buy-in is needed from senior leadership. The value of DevOps needs to be demonstrated and shown how it can be applied across the organization to drive profitable change. Ultimately, without senior endorsement, DevOps will not get the support and funding needed to scale.
Inflexible Command and Control Structures
A fundamental principle of DevOps is to realize rapid progress and improvement. However, such is the hierarchical culture of command and control within many large enterprises, that slow and complex approval processes stand in the way of DevOps-driven Digital Transformation from even getting off the ground.
Reinforced Change-Resistant Culture
Success with DevOps will influence change upon nearly every aspect of IT and many other parts of the business. But fear of such change – especially amongst long-serving staff – creates a culture of resistance. However, some staff members will be keen to learn new approaches and technologies, and will want to further their careers. If the organization cannot provide such opportunities, then they will be attracted to others which can reinforce the change-resistant culture in the company they leave behind.
Fear of “Fail Fast” Principle
“Fail Fast” is a concept that tends to raise eyebrows amongst those not familiar with the discipline. Failure is of course not a desirable outcome, but certain mistakes or “failures” are bound to creep in when building software – it’s just the nature of the practice, and a fact of life. But the point of “fail fast” is that if certain failures are inevitable, organizations should detect them quickly, fix the problem, and learn from it. Its unfortunate nomenclature that appears to go against the grain, but in fact it is one of the most efficient principles in practice.
“Me” vs. “We” culture
Organizational structures that lock people into roles or that are fear-driven can lead to a focus on optimizing work for the “me” and not for the “we.” Choosing processes and tools that favor an individual can lead to short-term gains that are not sustainable for the team or organization over the long term.
There Is No Standardized “Enterprise DevOps”
There is no separate “Enterprise DevOps” with different tools and practices that applies only to companies with large number of employees. There is not a single definition of success, with a single outcome that every company and organization should strive for. Organizations need to be comfortable building strength with the required agility and balance to navigate change.
Resistance to Change
It is important to recognize and value these insights “We have always done it this way” is not a sufficient reason for continuing to do something. Refusal to change or to even consider new ideas is how teams and companies stagnate, often leading to them getting passed over by their competitors. It is human nature to fear change, to reject the unfamiliar, but we should recognize this tendency in ourselves and actively work against it to make sure that we are hearing, considering and choosing the best ideas, not just the ones we are most comfortable with.