RSE Competencies

The paper Foundational Competencies and Responsibilities of a Research Software Engineer (a de-RSE position paper) defines a set of competencies (skills) that research software engineers typically have. These competencies are summarized here, together with resources related to each competence.

The resources displayed here are collected by the community. Initial content was collected in the deRSE23 and un-deRSE23 conferences, as well as follow-up discussions: see the notes of deRSE23 and this issue.

Contribute to this page.

Software/Technical skillsPermalink

RSEs are Research Software Engineers and, as such, possess software engineering skills that allow them to create and maintain complex and FAIR (Findable, Accessible, Interoperable, and Reusable) research software.

Adapting to the software life-cycle (SWLC) Permalink

Creating documented code building blocks (DOCBB) Permalink

Building distributable software (DIST) Permalink

Use repositories (SWREPOS) Permalink

Software behaviour awareness and analysis (MOD) Permalink

Research skillsPermalink

RSEs are working with Research Software and are capable of conducting research themselves. They are curious and have deep understanding of the research cycle and publication practices for ideas, software, and data.

Curiosity (NEW) Permalink

Understanding the research cycle (RC) Permalink

Software re-use (SRU) Permalink

Software publication (SP) Permalink

Using domain repositories/directories (DOMREP) Permalink

Communication skillsPermalink

RSEs are interacting extensively with others and, as such, they posess strong communication skills. They are typically embedded in a research group or work within a team of RSEs supporting particular research projects.

Working in a team (TEAM) Permalink

Teaching (TEACH) Permalink

Project management (PM) Permalink

Interaction with users and other stakeholders (USERS) Permalink