In this post, we look at the importance of avoiding anti-patterns during the transformation to DevOps.
Following on from learning about specific challenges of breaking down silos between teams and understanding the importance of culture in DevOps, we now look at the challenges as a whole of building culture in DevOps, specifically the anti-patterns that can be blockers to culture. This is not an easy task which requires careful planning and thought.
The following five things are all key things, which, when done poorly will act an an anti-pattern:
- Poor organisational alignment
- Resistance to change
- Difficulty scaling up
- Excessive focus on tooling
- Legacy infrastructure and systems
Let's take a look at these five things in more detail.
Poor organisational alignment
The importance of organisational alignment cannot be overstated. Later in the chapter, we discuss change resistance, and when you initiate change for the sake of achieving a clear vision or goals, you will encounter a high level of resistance in your organisation.
Success begins with understanding the what, why, and how. Your results are generated by implementing appropriate measures at each stage. Improved organisational alignment can lead to increased competitive advantage, increased revenue, lower costs, and higher profits, to name a few benefits.
Resistance to change
Change is a common occurrence in any business; sometimes these changes are forced, while other times they occur due to the need to change for the good of the business. Regardless of the scenario, you will almost certainly encounter resistance to change in most organisations. If that resistance is not addressed properly, your DevOps transformation may fail before it even begins.
When it comes to DevOps transformation, it is critical to understand how to deal with organisational change, the roles involved, and the steps required to make this successful.
Difficulty scaling up
Another anti-pattern in DevOps is the inability to scale up what you're doing. When most businesses first start out, scaling up will be a challenge. Growth, particularly rapid growth, brings with it challenges in scaling up your business.
Scaling your business is difficult; many changes are required, and even the most successful business can be derailed. Have you heard of the term "innovators dilemma"? It speaks to the difficulties of innovating in your business when you are in the midst of a reality cycle or your day-to-day operations. If you want to scale, getting rid of this impediment is critical.
Decide what you want to deliver, then form an agile team to work on advocacy and assist you in scaling your operations and removing roadblocks. Get the skills you need in this team and work toward a logical solution before moving the team to another team.
Excessive focus on tooling
So far, I've mentioned the importance of all aspects of DevOps before focusing on tooling a couple of times. A number of studies available online demonstrate the dangers of focusing too much on tooling.
The reality is that, while it is true that you can have an excessive focus on tooling over culture, people, and process in the early days, which can harm your transformation, you can also have an excessive focus on tooling after this point.
Legacy infrastructure and systems
Of course, DevOps is not limited to cloud technology; it can also be used in hybrid and on-premises environments. Although cloud environments make DevOps easier, legacy infrastructure, systems, and thinking can be major roadblocks to DevOps.
When it comes to DevOps adoption, legacy infrastructure causes several issues, the main one being that these systems are not designed for the continuous processes that come with DevOps. Releasing in iterations with legacy infrastructure is also difficult, if not impossible in some cases. This violates the entire DevOps ethos and begins to introduce challenges that must be overcome.
In post 16 in the series, we look at the Importance of Organisational Alignment in DevOps.