Imagine your team has a great new business idea. In order to get it up and running, you’ll need a new application built. It shouldn’t take much, it’s a pretty simple business process. You make a call to central IT to get things rolling… and that’s when your amazing idea starts rolling towards a cliff.
It’s not that the IT teams are uncooperative. They’re excited to build your new application and eager to get to work. So how do most IT projects end up failing?
The risks of change
For most Canadians, the current face of IT failure is the Government of Canada’s new “Phoenix” pay system. Its constant presence in recent headlines is a strong reminder that the cost of change can be massive.
Even though the costs can be high, we shouldn’t shy away from change. As Don points out, all changes need to be well-orchestrated and well-managed.
He also said not everything needs to be done as quickly as humanly possible. That’s where we disagree.
IT can and should enable rapid business transformation. The problem isn’t the pace of change, it’s how most organizations are making those changes.
Everything has a silo
Most organizations follow the same hierarchical pattern for building out teams. There’s a CIO and everyone in IT reports up into the structure that forms the IT organization. Organizations pushing the boundaries have business analysts working with business teams to determine their IT requirements and help things run smoothly.
This makes sense on paper because IT is a foundation piece of the business just like finance or HR… except that it isn’t. IT is an inseparable part of the fabric of any modern business. Isolating all IT-focused people under a silo is a mistake.
This type of organization design leads to work flows that encourage handing things off to teams in order for them to complete their work. The business team sets out requirements for the application. The development team builds it. The security team reviews it. The operations team deploys and runs it.
Right out of the gate, you have a system where work is done independent of other teams. There are firm boundaries between each set of tasks and unless input is explicitly sought out, each step of the process is done from a single point of view.
If there is debate at the end of any stage, teams have to get together, come back up to speed on the issues, and then work towards a compromise under a new set of constraints.
This leads to less effective solutions that take longer to be deployed. That’s why most modern software development teams – and IT organizations in general – have changed how they work. Now is the time for the entire business to adopt an agile approach to IT.
Small changes, faster
You’ve probably heard of “DevOps” (it was, after all, last year’s hottest buzzword). DevOps is an approach to building solutions where the development and operations teams work together to deliver small improvements quickly. After each improvement, a quick temperature check is made to ensure that the solution is on target to meet the goals set out by the business.
The primary goal of DevOps is to eliminate the barrier between development and operations. This is leading to more robust applications being built because each decision is weighed by both it’s design/code impact and its operational cost. Having the additional perspective from operations weighing in on development at the time the code is written means that assumptions aren’t made and questions aren’t answered in isolation.
DevOps is seeing success in both small teams and large enterprises. Due to its success, the approach is starting to be applied with a wider brush. Organizations are starting to ensure that all teams are working together in order to ensure that IT solutions are delivered quickly and meet the requirements set out by the business.
It’s hard to deny that an IT solution is better when multiple teams help bring it to production. Multiple points of view ensure that any trade offs are balanced and reasonable. No longer does one team dictate what ends up being delivered.
Successful teams are moving away from the silo approach and have started collaborating together like never before.
This is a major culture shock. It’s not uncommon for people from the business unit, development team, security, and operations to be working closely as an ad-hoc team. The challenge here is that there are different reporting structures in play and potentially different priorities. It’s not an easy transition but it is worth the effort.
Collaborating in teams that span organizational structures requires that people are empowered to make decisions and compromises in order to deliver a solution that is the best for the business.
For more traditional organizations, that’s a very scary thought. The good news is that organizations who adapt will be successful. They will rapidly develop and deliver tools that actually meet their business needs.
Organizations that re-enforce their siloes and require as much vertical communications as horizontal will continue to fall behind. This self-fulfilling spiral will quickly impact the bottom line as their competitors (who have adapted) can execute better in the market.
Move fast and succeed
Don’s post raises important points that need to be kept in mind when looking at how your organization delivers IT solutions. Change should be “well-orchestrated and well-managed” but that doesn’t have to slow you down.
Successful businesses know that IT is a critical piece of the fabric of the business. It is interwoven into everything the business does. Because of that, all team needs to be involved in delivering IT solutions.
Taking a traditional silo approach where each team hands off to the next is a recipe for disaster. When/if a solution is eventually delivered, it will probably be out of touch with the business needs, over budget, and only add to the technical debt facing the organization. The longer it takes to deliver an IT solution, the more likely it is to fail.
Creating ad-hoc teams that are empowered to make decisions allows the business to shift to a culture that delivers smaller changes faster. As the culture shifts and teams get more comfortable working in this way, the pace of change actually increases!
Move in smaller increments faster and you’ll finally unlock the power that an integration approach to IT can bring to your business.
None of this is easy. I’d love to hear your thoughts in the comments below or on Twitter where I’m @marknca.