Litcius/Paper detail

What improves developer productivity at google? code quality

Lan Cheng, Emerson Murphy-Hill, Mark Canning, Ciera Jaspan, Collin Green, Andrea Knight, Nan Zhang, Elizabeth Kammer

2022Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering15 citationsDOIOpen Access PDF

Abstract

Understanding what affects software developer productivity can help organizations choose wise investments in their technical and social environment. But the research literature either focuses on what correlates with developer productivity in ecologically valid settings or focuses on what causes developer productivity in highly constrained settings. In this paper, we bridge the gap by studying software developers at Google through two analyses. In the first analysis, we use panel data with 39 productivity factors, finding that code quality, technical debt, infrastructure tools and support, team communication, goals and priorities, and organizational change and process are all causally linked to self-reported developer productivity. In the second analysis, we use a lagged panel analysis to strengthen our causal claims. We find that increases in perceived code quality tend to be followed by increased perceived developer productivity, but not vice versa, providing the strongest evidence to date that code quality affects individual developer productivity.

Topics & Concepts

ProductivityTechnical debtComputer scienceQuality (philosophy)Software qualityCode (set theory)Process (computing)SoftwareCode reviewKnowledge managementSoftware developmentEconomicsMacroeconomicsOperating systemProgramming languageEpistemologyPhilosophySet (abstract data type)Open Source Software InnovationsMobile Crowdsensing and CrowdsourcingSoftware Engineering Research