Anyone in the IT industry today will note that much of the DevOps discussion is focused on small companies with large websites – often tech companies providing SaaS solutions, consumer web services, or some other solution content. There is another set of large websites, supported by large technology organizations that have a need for DevOps. These are large commerce sites for established retailers, banks, insurance companies, etc. Many of these companies have had large-scale online presences and massive software delivery organizations behind them for well over a decade now. Some of these enterprises would, in fact, qualify among the largest software companies on the planet dwarfing much more ‘buzz-worthy’ startups. It also turns out that they are pretty good at delivering to their online presence predictably and reliably – if not as agilely – as they would like.
Addressing the agility challenge in an enterprise takes a different mindset than it does in a tech startup. This has always been the case, of course. Common sense dictates that solving a problem for 100 people is intrinsically different than for 10,000. And yet so many discussions focus on something done for a ‘hot’ website or maybe a large ‘maverick’ team in a large organization. And those maverick team solutions more often than not do not scale to the enterprise and have to be replaced. Of course, that is rarely discussed or hyped. They just sort of fade away.
It is not that these faded solutions are bad or wrong, either. A lot of times, the issue is simply that they only looked at part of the problem and did not consider the impact of improving that part on the other parts of the organization. In large synchronized systems, you can only successfully accelerate or decelerate if the whole context does so together. There are many over-used analogies for this scenario, so let’s use the one about rowers on a boat to make this point and move on.
Let’s face it, large organizations can appear to be the “poster children” for silos in their organizational structure. You have to remember, though that those silos often exist because the organization learned hard lessons about the value of NOT having someone maniacally focused on one narrow, specialized activity. Think about this as your organization grows, runs into problems or failures, and puts infrastructure in place to make sure it doesn’t happen again.
One of the main points of this blog is going to be to look at the issues confronted by organizations that are or are becoming ‘enterprises’ and how they can balance the need for the Agile flexibility of DevOps with the pragmatic need to synchronize large numbers of people.