This talk sheds light on how engineers, practices, tooling, organizations and vendors interact to produce great code, stellar reliability and minimal tech debt… or not. Expanding upon the 2017 STELLA report from the Ohio State University Cognitive Systems Engineering Lab I will draw from over 30 years of systems engineering research and 2 years of first-hand experiences from our SNAFU Catcher Consortium members to focus in on a critical aspect of DevOps practices – coordination.
Coordination is a crucial part of DevOps. Aspects of social coding such as pull requests, daily stand ups or Wiki’s just wouldn’t work without it and key tools such as GitHub or Slack literally exist to facilitate it! But what exactly do we mean by coordination? Is it simply working with others to get something done or is it a much more complex, nuanced and sophisticated aspect of modern software engineering? Spoiler alert: My PhD research says it’s the second one!
Using case study examples from the tech industry, this talk will explore how coordination is both engineered through top down decisions (as defined by vendor agreements, organizational structure, tech architecture) and emergent in bottom up practices (as defined by the strategies and techniques practitioners use to manage day to day) to successfully carry out joint activity.
My goal in this talk is to: 1) Blow your mind as you learn about coordinative functions you didn’t even know you were doing 2) Get you fired up thinking about ways to lower the costs of coordination within your own squad!