Can DevOps -- teaming the efforts of developers and operations types -- succeed in big corporate environments? Or are the walls too high? It's often argued that attempting adopt collections of small, cooperative teams within large corporate structures won't work.
Hogwash, says Andi Mann, vice president of strategic solutions at CA Technologies. DevOps works just as well in large organizations as it does in smaller enterprises. He points out that larger organizations have different kinds of challenges that may make DevOps more difficult -- things can't be as spontaneous as in smaller companies as everything has to be planned well in advance, larger organizations "cannot achieve the same levels of agility and personal responsibility as smaller or less complex organizations," and "they cannot stream new code into production and just shut down for a couple of hours to fallback if it fails."
Plus, there tend to be more highly structured work rules and processes in larger enterprises -- "they cannot put developers and operators together because one team works 24×7 shifts in 7 data centers while the other works 16-hour days in 12 different locations."
Mann suggests that DevOps for larger enterprises adopt what he calls "Big DevOps" -- based on the same principles as DevOps, but adding enterprise sensibilities to the mix.
Big DevOps needs to address the following big enterprise concerns:
Compliance and security: "Large enterprises also have very different security and compliance requirements – for better or worse, necessary or not," says Mann. "Audit and compliance at a large public company will be highly disapproving of any developer who has full access to code, infrastructure and data in both test and production. Such enterprises need functional isolation, assured in systems and processes like privileged user management, identity and access controls, data protection, and yes, change controls and audit trails."
Workflow: "In smaller organizations with multi-disciplinary teams, DevOps can handle this workflow integrally," Mann points out. "But in large enterprises, these are all separate departments, each with perhaps hundreds of staff."
Planning:"Large enterprises do more planning," Mann explains. "This is simply the nature of the beast in a large environment, where there are exponentially more stakeholders and the ripple effect of change is exponentially greater than in smaller or less complex businesses. The complexity that is endemic in large enterprises requires more extensive planning, as it must accommodate more moving parts."