In this guest post, Jon Topper, co-founder and principal consultant of hosted infrastructure provider The Scale Factory, shares his thoughts on how the DevOps movement is maturing as enterprises move to adopt it.
In 2009, a group of like-minded systems administrators gathered in Gent, Belgium to discuss how they could apply the principles of agile software development to their infrastructure and operations work, and – in the process – created the concept of “DevOps”.
Over the course of the intervening years, DevOps has become a global movement, and established itself as a culture of practice intended to align the values of both developers and operations teams around delivering value to customers quickly and with a high level of quality.
The DevOps community understands that, although software and tools play a part in this, that doing DevOps successfully is often much more about people than technology.
The emergence of enterprise DevOps
Perhaps inevitably, the term “Enterprise DevOps” has recently emerged in its wake, with new conferences and meetup groups springing up under this banner, with consultancies, recruitment agencies, and software vendors all rushing to refer to what they do as Enterprise DevOps too.
Many original DevOps practitioners are sceptical of this trend, seeing it as the co-opting of their community movement by mercenary, sales-led organisations, and some of their scepticism is warranted.
The newcomers, in some cases, have shown themselves to be tone-deaf and have missed the point of the movement entirely. Some more established organisations have just slapped a “DevOps” label on their existing offerings, and show up to meetings in polo shirts instead of suits.
Different challenges at scale
As companies grow, new challenges arise at different scale points. Enterprises with thousands of employees are vast organisms, whose shape has been informed by years of adaptation to changing business environments.
In an SME, it is reasonably to assume the whole technology team knows each other. In enterprises, however, there are likely to be hundreds or thousands of individual contributors, across several offices and in different time zones. A DevOps transformation needs to facilitate better communication between these teams, which can sometimes require reorganisation.
Over time, large businesses accrue layers of process and scar tissue around previous organisational mistakes. These processes govern procurement practices, change control and security practice, and can be incompatible with a modern DevOps and agile mind-set.
A successful DevOps transformation necessitates the questioning and dismantling of those processes where they are no longer adding value.
How is Enterprise DevOps different?
In all honesty, I’m not sold on the idea Enterprise DevOps is an entirely unique discipline. At least not from an individual contributor perspective. Much of the same mindset and culture of practice is just as relevant for enterprise teams as they are in smaller businesses.
To allow these contributors to succeed in the context of a larger enterprise, substantial structural and process changes are required. Whether the act of making this change is something unique, or just the latest application of organisational change is up for debate, but the term seems to be here to stay.
How to succeed with Enterprise DevOps
Although Enterprise DevOps is a recent addition to the lexicon, some larger businesses have been doing DevOps for years now, and those that have been successful in their transformations have a number of things in common.
One major success factor is that there’s a high level executive in place who’s championing this sort of work. A powerful, trusting, business sponsor can be crucial in removing obstacles, and for ensuring transformations are provided with the resources they need.
Successful organisations seem to reorganise by building cross-functional teams aligned to a single product. These teams include project and product management, developers, ops team members, QA and others. They’re jointly responsible for building and operating their software. It should come as no surprise to learn these teams look like miniature start-up businesses inside a wider organisation.
Crucial to the success of these teams is a culture of collaboration and sharing. There’s little point in having multiple teams all trying to do the same thing in myriad different ways, or in all making the same mistakes. Successful teams in organisations like ITV and Hiscox have described their experiences of building a “common platform”. Design patterns and code are shared and reused between teams allowing them to build new platforms quickly, and at a high standard.
The cost of business transformation can be high, but now DevOps is proven to work in the enterprise, can you really afford not to make this change?