Can you help contribute content to this page?: The RSEToolkit is a community resource that is a work in progress. Can you help to add content to this page? We’d love to receive your contribution. See our contributing guidelines for details of how to provide content. You can also open an issue highlighting any content you’d like us to provide but aren’t able to contribute yourself.

Resources and information for new RSEs

This page provides a guide introducing RSE to newcomers to the field. You can use the links below to jump to a specific section.

Within this material we provide a large number of links to other resources that we hope will assist you in understanding RSE, the way it has developed, the approaches and best practices recommended for RSEs to use in their work and other general RSE guidance.

  • What is an RSE?
  • Where are RSEs based? (central teams, embedded in research groups, etc.)
  • Where to look for RSE jobs
  • Pointers to information on core skills, best practices, etc.

What is an RSE?

Research Software Engineers (RSEs) design, write and maintain software that is used to support or undertake research.

They may spend all their time working on the development of software or it may form part of their role alongside other research, management or administrative tasks.

The term “RSE” was first coined back in 2012 (see Simon Hettrick’s blog post “A not-so-brief history of Research Software Engineers”) but individuals undertaking RSE-like roles have existed at research institutions for many decades. Whether you have the job title “Research Software Engineer” or you are classed as a postdoctoral researcher or hold some other research or technical role, you may also consider yourself to be an RSE.

The RSE role is diverse and falls on a scale between traditional research and professional software engineering roles. There are examples of RSEs whose roles exist right across this scale, from very research-focused software development roles (for example in the Computer Science research area), to roles that are much more similar to professional software engineering roles.

What defines an RSE is something that is a matter of opinion - there are almost as many definitions of RSE as there are RSEs! Here we’ve aimed to give you a very general view but take a look at some of the following links to see some other perspectives of what an RSE is:

Where are RSEs and RSE roles based?

RSE roles can be split into the following types:

  • Central RSE roles
  • Embedded RSE roles

Central RSEs are part of central organisation like Professional Services in an institution, and provide support for many different departments and research groups. RSEs who work in central RSE teams tend to work on a variety of projects [across multiple domains], but some of them can be subject experts as well.

Embedded RSEs are a part of a research group in a specific department, and are similar to postdocs in their employment. They tend to be subject experts and work on more specific types of projects to central RSEs.

Both of these types of RSEs will do a combination of research and software engineering. Most permanent RSE roles are based in central RSE teams and embedded RSEs tend to be employed on fixed-term contracts, similar to postdocs.

Where to look for RSE jobs

[We’re happy to receive additions to this list. Add your own additions via a pull request or open an issue detailing the link you’d like to see added and a maintainer will add the link to the list for you.]

There are now many sources for details of RSE jobs. A great place to start is the Society of Research Software Engineering’s vacancies page.

Other good sources for RSE job information include:

Core RSE resources

Some of the main resources to refer to for information about Research Software Engineering.