Foundational Competencies and Specializations of a Research Software Engineer
The term research software engineer (RSE) emerged to represent individuals working in the research community but focusing on software development. It has been widely adopted, and has several high-level definitions. However, their work varies depending on the institutional context. At one extreme, RSE roles look similar to traditional researchers. At the other extreme, they resemble an industrial software engineer. Most RSE roles inhabit the spectrum in between. Therefore, providing a straightforward, comprehensive definition of what an RSE does and what experience, skills, and competencies they require is challenging. In this summarized community article, we define the broad notion of RSEs, explore their different types of work, and define a list of competencies and values that frame their general identity. Further research and training can build upon and expand this foundation, and we expect graduates and practitioners to have a larger, more diverse set of skills than outlined here.
Authors
- Jan Philipp Thiele (ORCID: https://orcid.org/0000-0002-8901-6660)
- Florian Goth (ORCID: https://orcid.org/0000-0003-2707-4790)
Institutions
- University of Würzburg (DE)
- Weierstrass Institute for Applied Analysis and Stochastics (DE)
- Instituto de Física Teórica (ES)
- Society for Clinical Research (DE)
Publication Details
- Journal
- Computing in Science & Engineering
- Published
- 2025-03-18
- DOI
- https://doi.org/10.1109/mcse.2025.3552156
- Citations
- 3
- Primary Topic
- Software Engineering Techniques and Practices
- Type
- article
- Field-Weighted Citation Impact
- 9.74