Towards a Theory of Software Development Expertise
Sebastian Baltes, Stephan Diehl

TL;DR
This paper proposes a comprehensive conceptual theory of software development expertise based on survey data and literature, highlighting factors influencing expertise and its potential decline, with insights into self-assessment and experience.
Contribution
It introduces the first integrated theory of software development expertise, combining empirical data and literature to explain its properties and development.
Findings
Expertise self-assessments are context-dependent
Experience does not necessarily correlate with expertise
Factors influencing expertise formation and decline are identified
Abstract
Software development includes diverse tasks such as implementing new features, analyzing requirements, and fixing bugs. Being an expert in those tasks requires a certain set of skills, knowledge, and experience. Several studies investigated individual aspects of software development expertise, but what is missing is a comprehensive theory. We present a first conceptual theory of software development expertise that is grounded in data from a mixed-methods survey with 335 software developers and in literature on expertise and expert performance. Our theory currently focuses on programming, but already provides valuable insights for researchers, developers, and employers. The theory describes important properties of software development expertise and which factors foster or hinder its formation, including how developers' performance may decline over time. Moreover, our quantitative results…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
