Appendix to What Makes a Great Software Engineer

  • Paul L. Li ,
  • Amy J. Ko ,
  • Jiamin Zhu

MSR-TR-2019-8 |

Published by Microsoft

Good software engineers are essential to the creation of good software. However, most of what we know about software-engineering expertise are vague stereotypes, such as ‘excellent communicators’ and ‘great teammates’. The lack of specificity in our understanding hinders researchers from reasoning about them, employers from identifying them, and young engineers from becoming them. Our understanding also lacks breadth: what are all the distinguishing attributes of great engineers (technical expertise and beyond)? We took a first step in addressing these gaps by interviewing 59 experienced engineers across 13 divisions at Microsoft, uncovering 54 attributes of great engineers. In our ICSE paper, (Li, Ko, Zhu, 2015) we explained a small subset of the attributes; in this technical report we describe the full set of attributes and examine how they impact projects and teams.