Foundational Competencies and Responsibilities of a Research Software Engineer

Research output: Working paper/PreprintPreprint

Authors

  • Florian Goth
  • Renato Alves
  • Matthias Braun
  • Leyla Jael Castro
  • Gerasimos Chourdakis
  • Simon Christ
  • Jeremy Cohen
  • Fredo Erxleben
  • Jean-Noël Grad
  • Magnus Hagdorn
  • Toby Hodges
  • Guido Juckeland
  • Dominic Kempf
  • Anna-Lena Lamprecht
  • Jan Linxweiler
  • Moritz Schwarzmeier
  • Heidi Seibold
  • Jan Philipp Thiele
  • Harald von Waldow
  • Samantha Wittke

Research Organisations

External Research Organisations

  • Julius Maximilian University of Würzburg
  • European Molecular Biology Laboratory
  • University of Stuttgart
  • German National Library of Medicine ZB MED - Leibniz Information Centre for Life Sciences
  • Technical University of Munich (TUM)
  • Imperial College London
  • Helmholtz-Zentrum Dresden-Rossendorf (HZDR)
  • Charité - Universitätsmedizin Berlin
  • The Carpentries
  • Technische Universität Braunschweig
  • Technische Universität Darmstadt
  • Institute for Globally Distributed Open Research and Education (IGDORE)
  • Weierstrass Institute for Applied Analysis and Stochastics (WIAS) Weierstraß-Institut für Angewandte Analysis und Stochastik (WIAS) Leibniz-Institute in Forschungsverbund Berlin e. V.
  • Johann Heinrich von Thünen Institute, Federal Research Institute for Rural Areas, Forestry and Fisheries
  • CSC - IT Center for Science Ltd.
  • Heidelberg University
  • University of Potsdam
View graph of relations

Details

Original languageEnglish
Publication statusE-pub ahead of print - 19 Nov 2023

Abstract

The term Research Software Engineer, or RSE, emerged a little over 10 years ago as a way to represent individuals working in the research community but focusing on software development. The term has been widely adopted and there are a number of high-level definitions of what an RSE is. However, the roles of RSEs vary depending on the institutional context they work in. At one end of the spectrum, RSE roles may look similar to a traditional research role. At the other extreme, they resemble that of a software engineer in industry. Most RSE roles inhabit the space between these two extremes. Therefore, providing a straightforward, comprehensive definition of what an RSE does and what experience, skills and competencies are required to become one is challenging. In this community paper we define the broad notion of what an RSE is, explore the different types of work they undertake, and define a list of fundamental competencies as well as values that define the general profile of an RSE. On this basis, we elaborate on the progression of these skills along different dimensions, looking at specific types of RSE roles, proposing recommendations for organisations, and giving examples of future specialisations. An appendix details how existing curricula fit into this framework.

Keywords

    cs.SE, cs.CY, physics.comp-ph

Cite this

Foundational Competencies and Responsibilities of a Research Software Engineer. / Goth, Florian; Alves, Renato; Braun, Matthias et al.
2023.

Research output: Working paper/PreprintPreprint

Goth, F, Alves, R, Braun, M, Castro, LJ, Chourdakis, G, Christ, S, Cohen, J, Erxleben, F, Grad, J-N, Hagdorn, M, Hodges, T, Juckeland, G, Kempf, D, Lamprecht, A-L, Linxweiler, J, Schwarzmeier, M, Seibold, H, Thiele, JP, Waldow, HV & Wittke, S 2023 'Foundational Competencies and Responsibilities of a Research Software Engineer'. https://doi.org/10.48550/arXiv.2311.11457
Goth, F., Alves, R., Braun, M., Castro, L. J., Chourdakis, G., Christ, S., Cohen, J., Erxleben, F., Grad, J.-N., Hagdorn, M., Hodges, T., Juckeland, G., Kempf, D., Lamprecht, A.-L., Linxweiler, J., Schwarzmeier, M., Seibold, H., Thiele, J. P., Waldow, H. V., & Wittke, S. (2023). Foundational Competencies and Responsibilities of a Research Software Engineer. Advance online publication. https://doi.org/10.48550/arXiv.2311.11457
Goth F, Alves R, Braun M, Castro LJ, Chourdakis G, Christ S et al. Foundational Competencies and Responsibilities of a Research Software Engineer. 2023 Nov 19. Epub 2023 Nov 19. doi: 10.48550/arXiv.2311.11457
Goth, Florian ; Alves, Renato ; Braun, Matthias et al. / Foundational Competencies and Responsibilities of a Research Software Engineer. 2023.
Download
@techreport{00fb92c146094245b8e40018f2356782,
title = "Foundational Competencies and Responsibilities of a Research Software Engineer",
abstract = " The term Research Software Engineer, or RSE, emerged a little over 10 years ago as a way to represent individuals working in the research community but focusing on software development. The term has been widely adopted and there are a number of high-level definitions of what an RSE is. However, the roles of RSEs vary depending on the institutional context they work in. At one end of the spectrum, RSE roles may look similar to a traditional research role. At the other extreme, they resemble that of a software engineer in industry. Most RSE roles inhabit the space between these two extremes. Therefore, providing a straightforward, comprehensive definition of what an RSE does and what experience, skills and competencies are required to become one is challenging. In this community paper we define the broad notion of what an RSE is, explore the different types of work they undertake, and define a list of fundamental competencies as well as values that define the general profile of an RSE. On this basis, we elaborate on the progression of these skills along different dimensions, looking at specific types of RSE roles, proposing recommendations for organisations, and giving examples of future specialisations. An appendix details how existing curricula fit into this framework. ",
keywords = "cs.SE, cs.CY, physics.comp-ph",
author = "Florian Goth and Renato Alves and Matthias Braun and Castro, {Leyla Jael} and Gerasimos Chourdakis and Simon Christ and Jeremy Cohen and Fredo Erxleben and Jean-No{\"e}l Grad and Magnus Hagdorn and Toby Hodges and Guido Juckeland and Dominic Kempf and Anna-Lena Lamprecht and Jan Linxweiler and Moritz Schwarzmeier and Heidi Seibold and Thiele, {Jan Philipp} and Waldow, {Harald von} and Samantha Wittke",
note = "28 pages, public repository for feedback here: https://github.com/CaptainSifff/paper_teaching-learning-RSE",
year = "2023",
month = nov,
day = "19",
doi = "10.48550/arXiv.2311.11457",
language = "English",
type = "WorkingPaper",

}

Download

TY - UNPB

T1 - Foundational Competencies and Responsibilities of a Research Software Engineer

AU - Goth, Florian

AU - Alves, Renato

AU - Braun, Matthias

AU - Castro, Leyla Jael

AU - Chourdakis, Gerasimos

AU - Christ, Simon

AU - Cohen, Jeremy

AU - Erxleben, Fredo

AU - Grad, Jean-Noël

AU - Hagdorn, Magnus

AU - Hodges, Toby

AU - Juckeland, Guido

AU - Kempf, Dominic

AU - Lamprecht, Anna-Lena

AU - Linxweiler, Jan

AU - Schwarzmeier, Moritz

AU - Seibold, Heidi

AU - Thiele, Jan Philipp

AU - Waldow, Harald von

AU - Wittke, Samantha

N1 - 28 pages, public repository for feedback here: https://github.com/CaptainSifff/paper_teaching-learning-RSE

PY - 2023/11/19

Y1 - 2023/11/19

N2 - The term Research Software Engineer, or RSE, emerged a little over 10 years ago as a way to represent individuals working in the research community but focusing on software development. The term has been widely adopted and there are a number of high-level definitions of what an RSE is. However, the roles of RSEs vary depending on the institutional context they work in. At one end of the spectrum, RSE roles may look similar to a traditional research role. At the other extreme, they resemble that of a software engineer in industry. Most RSE roles inhabit the space between these two extremes. Therefore, providing a straightforward, comprehensive definition of what an RSE does and what experience, skills and competencies are required to become one is challenging. In this community paper we define the broad notion of what an RSE is, explore the different types of work they undertake, and define a list of fundamental competencies as well as values that define the general profile of an RSE. On this basis, we elaborate on the progression of these skills along different dimensions, looking at specific types of RSE roles, proposing recommendations for organisations, and giving examples of future specialisations. An appendix details how existing curricula fit into this framework.

AB - The term Research Software Engineer, or RSE, emerged a little over 10 years ago as a way to represent individuals working in the research community but focusing on software development. The term has been widely adopted and there are a number of high-level definitions of what an RSE is. However, the roles of RSEs vary depending on the institutional context they work in. At one end of the spectrum, RSE roles may look similar to a traditional research role. At the other extreme, they resemble that of a software engineer in industry. Most RSE roles inhabit the space between these two extremes. Therefore, providing a straightforward, comprehensive definition of what an RSE does and what experience, skills and competencies are required to become one is challenging. In this community paper we define the broad notion of what an RSE is, explore the different types of work they undertake, and define a list of fundamental competencies as well as values that define the general profile of an RSE. On this basis, we elaborate on the progression of these skills along different dimensions, looking at specific types of RSE roles, proposing recommendations for organisations, and giving examples of future specialisations. An appendix details how existing curricula fit into this framework.

KW - cs.SE

KW - cs.CY

KW - physics.comp-ph

U2 - 10.48550/arXiv.2311.11457

DO - 10.48550/arXiv.2311.11457

M3 - Preprint

BT - Foundational Competencies and Responsibilities of a Research Software Engineer

ER -

By the same author(s)