Identifying Factors Contributing to Bad Days for Software Developers: A Mixed Methods Study
Abstract: Software development is a dynamic activity that requires engineers to work effectively with tools, processes, and collaborative teams. As a result, the presence of friction can significantly hinder productivity, increase frustration, and contribute to low morale among developers. By contrast, higher satisfaction levels are positively correlated with higher levels of perceived productivity. Hence, understanding the factors that cause bad experiences for developers is critical for fostering a positive and productive engineering environment. In this research, we employed a mixed-method approach, including interviews, surveys, diary studies, and analysis of developer telemetry data to uncover and triangulate common factors that cause "bad days" for developers. The interviews involved 22 developers across different levels and roles. The survey captured the perception of 214 developers about factors that cause them to have "bad days," their frequency, and their impact on job satisfaction. The daily diary study engaged 79 developers for 30 days to document factors that caused "bad days" in the moment. We examined the telemetry signals of 131 consenting participants to validate the impact of bad developer experience using system data. Findings from our research revealed factors that cause "bad days" for developers and significantly impact their work and well-being. We discuss the implications of these findings and suggest future work.
- F. Fagerholm and J. Münch, “Developer experience: Concept and definition,” in 2012 international conference on software and system process (ICSSP).   IEEE, 2012, pp. 73–77.
- N. Forsgren, E. Kalliamvakou, A. Noda, M. Greiler, B. Houck, and M.-A. Storey, “Devex in action,” Communications of the ACM, vol. 67, no. 6, pp. 42–51, 2024.
- N. Forsgren, “Quantifying the impact of developer experience,” Jan 2024. [Online]. Available: https://azure.microsoft.com/en-us/blog/quantifying-the-impact-of-developer-experience/
- A. Noda, M.-A. Storey, N. Forsgren, and M. Greiler, “Devex: What actually drives productivity?” Communications of the ACM, vol. 66, no. 11, pp. 44–49, 2023.
- S. Srivastava, K. Trehan, D. Wagle, and J. Wang, “Developer velocity: How software excellence fuels business performance,” McKinsey & Company, pp. 1–11, 2020.
- B. Doerrfeld, “Understanding the importance of developer experience,” Dec 2022. [Online]. Available: https://devops.com/understanding-the-importance-of-developer-experience/
- A. N. Meyer, E. T. Barr, C. Bird, and T. Zimmermann, “Today was a good day: The daily life of software developers,” IEEE Transactions on Software Engineering, vol. 47, no. 5, pp. 863–880, 2019.
- S. C. Müller and T. Fritz, “Stuck and frustrated or in flow and happy: Sensing developers’ emotions and progress,” in 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, vol. 1.   IEEE, 2015, pp. 688–699.
- D. Graziotin and F. Fagerholm, “Happiness and the productivity of software engineers,” in Rethinking Productivity in Software Engineering.   Springer, 2019, pp. 109–124.
- C. D. Egelman, E. Murphy-Hill, E. Kammer, M. M. Hodges, C. Green, C. Jaspan, and J. Lin, “Predicting developers’ negative feelings about code review,” in Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering, 2020, pp. 174–185.
- M.-A. Storey, T. Zimmermann, C. Bird, J. Czerwonka, B. Murphy, and E. Kalliamvakou, “Towards a theory of software developer job satisfaction and perceived productivity,” IEEE Transactions on Software Engineering, vol. 47, no. 10, pp. 2125–2142, 2019.
- A. Razzaq, J. Buckley, Q. Lai, Y. Ting, and G. Botterweck, “A systematic literature review on the influence of enhanced developer experience on developers’ productivity: Factors, practices, and recommendations,” ACM Computing Surveys, 2024.
- A. N. Meyer, L. E. Barton, G. C. Murphy, T. Zimmermann, and T. Fritz, “The work life of developers: Activities, switches and perceived productivity,” IEEE Transactions on Software Engineering, vol. 43, no. 12, pp. 1178–1193, 2017.
- D. Girardi, F. Lanubile, N. Novielli, and A. Serebrenik, “Emotions and perceived productivity of software developers at the workplace,” IEEE Transactions on Software Engineering, vol. 48, no. 9, pp. 3326–3341, 2021.
- D. Graziotin, X. Wang, and P. Abrahamsson, “Happy software developers solve problems better: psychological measurements in empirical software engineering,” PeerJ, vol. 2, p. e289, 2014.
- D. Graziotin, F. Fagerholm, X. Wang, and P. Abrahamsson, “Unhappy developers: Bad for themselves, bad for process, and bad for software product,” in 2017 IEEE/ACM 39th International Conference on Software Engineering Companion (ICSE-C).   IEEE, 2017, pp. 362–364.
- S. D’Angelo, J. Lin, J. Dicker, C. Egelman, M. Hodges, C. Green, and C. Jaspan, “Measuring developer experience with a longitudinal survey,” IEEE Software, vol. 41, no. 4, pp. 19–24, 2024.
- N. Forsgren, M.-A. Storey, C. Maddila, T. Zimmermann, B. Houck, and J. Butler, “The space of developer productivity: There’s more to it than you think.” Queue, vol. 19, no. 1, pp. 20–48, 2021.
- A. Brown, S. D’Angelo, B. Holtz, C. Jaspan, and C. Green, “Using logs data to identify when software engineers experience flow or focused work,” in Proceedings of the 2023 CHI Conference on Human Factors in Computing Systems, 2023, pp. 1–12.
- A. N. Meyer, T. Fritz, G. C. Murphy, and T. Zimmermann, “Software developers’ perceptions of productivity,” in Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering, 2014, pp. 19–29.
- E. Murphy-Hill, C. Jaspan, C. Sadowski, D. Shepherd, M. Phillips, C. Winter, A. Knight, E. Smith, and M. Jorde, “What predicts software developers’ productivity?” IEEE Transactions on Software Engineering, vol. 47, no. 3, pp. 582–594, 2019.
- S. Lu, S. Park, E. Seo, and Y. Zhou, “Learning from mistakes: a comprehensive study on real world concurrency bug characteristics,” in Proceedings of the 13th international conference on Architectural support for programming languages and operating systems, 2008, pp. 329–339.
- A. J. Ko, R. DeLine, and G. Venolia, “Information needs in collocated software development teams,” in 29th International Conference on Software Engineering (ICSE’07).   IEEE, 2007, pp. 344–353.
- S. Wang, D. Lo, and L. Jiang, “An empirical study on developer interactions in stackoverflow,” in Proceedings of the 28th annual ACM symposium on applied computing, 2013, pp. 1019–1024.
- D. Badampudi, M. Unterkalmsteiner, and R. Britto, “Modern code reviews—survey of literature and practice,” ACM Transactions on Software Engineering and Methodology, vol. 32, no. 4, pp. 1–61, 2023.
- M. V. Mäntylä and C. Lassenius, “What types of defects are really discovered in code reviews?” IEEE Transactions on Software Engineering, vol. 35, no. 3, pp. 430–448, 2008.
- C. Sadowski, E. Söderberg, L. Church, M. Sipko, and A. Bacchelli, “Modern code review: a case study at google,” in Proceedings of the 40th international conference on software engineering: Software engineering in practice, 2018, pp. 181–190.
- A. Bosu, M. Greiler, and C. Bird, “Characteristics of useful code reviews: An empirical study at microsoft,” in 2015 IEEE/ACM 12th Working Conference on Mining Software Repositories.   IEEE, 2015, pp. 146–156.
- S. Phillips, T. Zimmermann, and C. Bird, “Understanding and improving software build teams,” in Proceedings of the 36th international conference on software engineering, 2014, pp. 735–744.
- Y. Yu, H. Dayani-Fard, and J. Mylopoulos, “Removing false code dependencies to speedup software build processes,” in Proceedings of the 2003 conference of the Centre for Advanced Studies on Collaborative research, 2003, pp. 343–352.
- Q. Tu and M. W. Godfrey, “The build-time software architecture view,” in Proceedings IEEE International Conference on Software Maintenance. ICSM 2001.   IEEE, 2001, pp. 398–407.
Paper Prompts
Sign up for free to create and run prompts on this paper using GPT-5.
Top Community Prompts
Collections
Sign up for free to add this paper to one or more collections.