Why effective DevOps needs maneuverability more than speed
The hype around effective DevOps can make it sound like the real value provided by the methodology comes from faster time to deployment. But this misses the real benefit around maneuverability, argued Michael Nygard, an enterprise architect with Cognitect. “We talk a lot about velocity, but not so much about acceleration, which is the ability to move faster and slower as required,” he said.
Enterprises that can speed or slow their pace of development in response to changing conditions are more maneuverable than the competition. The cloud makes infrastructure disposable, and code repositories make code disposable. “Maybe even the teams need to be disposable,” quipped Nygard. This is different than making people disposable, which kills morale
Effective DevOps means being nimble
Real maneuverability comes from making it easy for teams to break down and start up projects quickly. That’s effective DevOps. The value of the individual comes from the team processes involved in completing and starting projects rather than someone’s role in a particular project. Nygard pointed out that some army units are able to break down and set up a new camp in a few hours, while others can take days. This differences comes from the collaboratively experience of navigating thousands of tiny decisions like how to move the trucks in the right order or where to put the latrines. This means developing a shared understanding around things like version control and build pipelines in the enterprise.
Team members also need to become adept at intuiting the kinds of decision others are likely to make in response to shifting conditions. A small unit commander in the military has a good idea of how other commanders will make a decision. This is something lacking in effective DevOps teams dispersed by function and geography. “Tempo is an emergent property that comes from some characteristics of your organization, and has to be built at every level,” said Nygard.