United Flight 232 should have crashed with 296 lives lost. In contrast, Asiana Flight 214 should not have crashed at all. The critical difference between the two was the interactions of their respective aircrews. Aircrew resource management refers to how cockpit crew members work together to make flights as safe and efficient as possible. These principles have been applied to other professional fields, and should be a central practice of every DevOps team.
DevOps teams require expertise in all aspects of software design, development, test, delivery, and operations. There can be no “command pilot” whose expertise over all aspects of DevOps is greater than the combined expertise and experience of others. And while the leader of the team is the final authority, he or she must listen to and consider team members whose knowledge and experience can make the difference between success and failure.
This ignite talk discusses how aircrew resource management has evolved to focus on expertise, collaboration, and decision-making in the cockpit. It applies these lessons to DevOps teams, where complementary expertise is necessary to deliver high quality and working applications, updated continuously. It highlights the characteristics of successful aircrew teams and how those characteristics apply to building and delivering great software.