RDEL #51: What do developers perceive as productive days?
This week we review what constitutes a productive day from the lens of the developer, and contrast that with other definitions of productivity.
Welcome back to Research-Driven Engineering Leadership. Each week, we pose an interesting topic in engineering leadership, and apply the latest research in the field to drive to an answer.
While much literature looks at the productivity from the organizational view, far fewer studies look at how developers themselves perceive productivity. This week, we center our questions on the lens of the developer and ask: what do developers perceive as being productive?
The context
Software productivity has been a crucial topic of interest for decades, particularly as the demand for software continuously exceeds the supply. Historically, productivity in software engineering has been measured using various metrics such as lines of code, function points, and modification requests per unit time. Over time, research and industry knowledge has adapted their perspective to a much more comprehensive view of productivity, which looks at both system metrics and developer sentiment (i.e SPACE framework).
Understanding productivity from the perspective of software developers themselves is vital as it can inform better practices, tools, and environments that align with their workflows and challenges. We’ve previously covered the nuances of productivity, including (but not limited to) the impact of work environment, developer satisfaction, interruptions, and even imposter syndrome.
The research
The study explores software developers' perceptions of productivity through a mixed-method approach, including a survey with 379 professional developers and an observational study with 11 developers. The survey aimed to gather broad insights into what developers consider productive and unproductive work. The observational study provided detailed logs of developers' activities and task switches over a total of 44 hours.
Key findings include:
Developers perceive productive days as those where they complete many or large tasks without significant interruptions or context switches. Specifically, 53.2% of developers feel their workday is productive when they complete tasks or achieve their planned goals. 50.4% mentioned that having no or few interruptions significantly contributes to their productivity.
Developers switched tasks on average 13.3 times per hour and switched activities 47 times per hour. Despite this high frequency of context switching, 73% of the observed developers still felt that their work sessions were productive.
The nature and cost of context switches vary, with creative tasks that require more focus being more expensive to switch from compared to routine tasks.
57.9% of survey respondents viewed meetings as unproductive. However, 17.3% considered them productive when they had clear goals and facilitated decision-making.
The application
This study’s observation of the ways in which engineers perceive productive time underscores an extremely important characteristic of productivity: that observational system metrics alone do not paint a full picture of productivity. For example, developers often value uninterrupted work and the completion of significant tasks without context switching, which differ from the more quantitative measures typically emphasized by organizations.
To get a true, comprehensive view of how productive your team is, combine more traditional system based metrics with sentiment metrics (as outlined in the SPACE framework). The benefit here is not only that teams get a more clear picture of the enablers and bottlenecks of productivity, but that teams will be able to action correctly on improving the team’s productivity. Fostering a culture that values and understands the nuances of productivity - acknowledges the atomic unit as the team (instead of a single individual) - will also contribute to a more supportive and efficient development environment .
—
Happy Research Monday!
Lizzie
Thanks so much, Lizzie, for summarizing our paper. Crazy how it was published almost 10 years ago 🙈 It's interesting how awareness about the importance of considering the individual developers' perspective on productivity has risen since then, but there is still lots to do and there are still too many, who think developer productivity can be measured by a few simple metrics...