Learn research software engineering

Do you want to become an RSE? While there are few (if any) RSE-specific study programs at the moment, many are, at their core, programs that teach RSE skills. But, even if you have already studied something else, several online resources may help you obtain new competencies.

Contribute to this page.

Study programs

Curricula on Scientific Computing

Level Name University Country Language
B.Sc. Angewandte Informatik University of Göttingen Germany German
M.Sc. Angewandte Informatik University of Göttingen Germany German & English
B.Sc. Computing in Science University of Hamburg Germany German
M.Sc. Computational Modeling and Simulation TU Dresden Germany English
M.Sc. Computational Science University of Potsdam Germany German & English
M.Sc. Computational Science and Engineering Technical University of Munich Germany English
M.Sc. Computational Science and Engineering University of Ulm Germany German
M.Sc. Computational Sciences in Engineering Technische Universität Braunschweig Germany English
M.Sc. Scientific Computing University of Heidelberg Germany English
M.Sc. Scientific Computing University of Bayreuth Germany English
M.Sc. Scientific Computing TU Berlin Germany English
B.Sc. Simulation Technology University of Stuttgart Germany German
M.Sc. Simulation Technology University of Stuttgart Germany German
B.Sc. Informatik und Computational Science University of Potsdam Germany German

Curricula on High-Performance Computing

Level Name University Country Language
M.Sc. EUMaster4HPC Univ. Luxembourg and more EU English
M.Sc. High-Performance Computing SISSA and ICTP Italy English
M.Sc. High-Performance Computing University of Edinburgh UK English

Curricula on Data Science

Level Name University Country Language
M.Sc. Data Science University of Potsdam Germany English
B.Sc. Data Science and Scientific Computing Munich University of Applied Sciences Germany German
M.Sc. Data Engineering and Analytics Technical University of Munich Germany English
M.Sc. High-Performance Computing with Data Science University of Edinburgh UK English

Other initiatives

In the teachingRSE project, we are also working on a recommendation for an RSE Master’s programme. Contact us, or contribute on GitHub.

Online resources

Better Scientific Software

Material all around writing better scientific software and beyond. See the list of all BSSw resources.

Competencies covered: DOCBB DIST SWLC SWREPOS MOD SRU SP TEACH PM

Visit Better Scientific Software

CodeRefinery

Project currently funded by Nordic e- infrastructure collaboration. RSE network/community and workshops with public and mainly self-learning ready materials. General workshop and materials topics (programming language agnostic; but introduces some specific tools in hands-on materials): Intro to and collaborative git, reproducible research, social coding, documentation, jupyter, automated testing and modular code development. Also provides materials on community teaching and instructor training, as well as some other related materials, eg on CMake or data visualization with Python. See the list of all lessons.

Competencies covered: DOCBB SWREPOS SRU SP

Visit CodeRefinery

Featured image of this resource

Effective Computation in Physics

This O’REILLY book is a great resource that can be very useful for research software beyond Physics. The topics range from terminal, classes and objects, to deploying software, testing, debugging, and copyright.

Competencies covered: DOCBB DIST SWLC SWREPOS MOD SRU SP DOMREP

Visit Effective Computation in Physics

FAIR software checklist

A self-assessment tool for findable, accessible, interoperable, and reusable research software.

Competencies covered: SRU SP

Visit FAIR software checklist

Green Algorithms

The Green Algorithms project aims at promoting more environmentally sustainable computational science. It regroups calculators that researchers can use to estimate the carbon footprint of their projects, tips on how to be more environmentally friendly, training material, past talks etc.

Competencies covered: MOD SWLC NEW RC

Visit Green Algorithms

Help! I have a manager!

This is a (paid) zine by Julia Evans, discussing how to communicate with your manager (here: postdoc/professor). How to set clear expectations, ask and process feedback, and how to keep conversations constructive.

Competencies covered: USERS

Visit Help! I have a manager!

INTERSECT

In addition to their own material, INTERSECT also provides a list of other RSE learning material.

Competencies covered:

Visit INTERSECT

Nature Masterclasses

This is a video series discussing topics from academic writing and analyzing data, planning and performing experiments and data collections, managing data, leading, or planning a career in research. Available through university libraries.

Competencies covered: RC PM

Visit Nature Masterclasses

pyOpenSci Python Package Guide

A guide to package and publish Python-based software.

Competencies covered: SP

Visit pyOpenSci Python Package Guide

R Packages (2e)

Learn how to create a package, the fundamental unit of shareable, reusable, and reproducible R code.

Competencies covered: SP DIST

Visit R Packages (2e)

R-universe

R-universe is rOpenSci’s platform for improving publication and discovery of research software in R. It provides a CRAN-like repository (so users can just use install.packages()) where package binaries are built for all platforms (including WASM!).

Competencies covered: SWREPOS SP

Visit R-universe

Research Software Engineering with Python

An ebook that one can read from front to back, covering the shell and CLI tools, Git basics, Makefiles, Configuration files, as well as a bit of Teamwork, Testing, Error-Handling, and Packaging. The level is mostly basic (also for people that have barely any previous experience with programming), but covers a wide range of essential skills. While Python is in the name, this is not really required.

Competencies covered: DOCBB DIST SWREPOS SRU TEAM PM

Visit Research Software Engineering with Python

Featured image of this resource

rOpenSci Package: Development, Maintainence, and Peer Review

A guide for best practices in developing, maintaining, and reviewing R packages.

Competencies covered: SP DIST

Visit rOpenSci Package: Development, Maintainence, and Peer Review

rOpenSci

rOpenSci is an organization that supports development and maintenance of R packages for the sciences. One can submit an R package for review and if accepted it will be migrated to the rOpenSci organization and be searchable through rOpenSci’s website. They also have an active Slack community and regular community calls and events.

Competencies covered: DIST SWREPOS

Visit rOpenSci

Suresoft

A research initiative from TU Braunschweig focusing on sustainable research software by teaching software engineering skills ranging from basic to advanced topics. Suresoft offers workshops introducing essential tools like Git and Docker as well as more advanced software design concepts including the SOLID principles, Design Patterns and Test Driven Development.

Competencies covered: DOCBB DIST SWLC SWREPOS MOD SRU SP PM

Visit Suresoft

Featured image of this resource

The Turing Way

The Turing Way handbook to reproducible, ethical and collaborative data science. This is an open source, open collaboration, and community-driven project. It involves and supports a diverse community of contributors to make data science accessible, comprehensible and effective for everyone. Its goal is to provide all the information that researchers and data scientists in academia, industry and the public sector need to ensure that the projects they work on are easy to reproduce and reuse.

Competencies covered: DOCBB SWREPOS SRU SP TEAM PM USERS

Visit The Turing Way