Advanced Research Computing


Research Infrastructure Developers

Experts in building and maintaining the customised hardware and software infrastructure used by researchers, who often conduct their own independent research projects.

What do Research Infrastructure Developers do?

Research Infrastructure Developers design and build the computational and data infrastructure for researchers, making use of best practice techniques such as software defined infrastructure, continuous integration and deployment, version control) to create systems that are performant, resiliant and easy to (re-)deploy and maintain.

They may be attached to a specific project or they may work as part of a team building and supporting larger, shared services (most usually both).

Because the role involves design responsibility for future infrastructure, RIDs may be PIs or have their own research projects related to infrastructure (for example looking at a new accelerator, network or processor technology), depending on the institution and policies of the projects they are working on.

As they progress in their career, RIDs may be responsible for entire large infrastructure at an institution or nationally.

Who are Research Infrastructure Developers?

Research Infrastructure Developers come from a wide variety of backgrounds - some are professional system administrators or experienced DevOps professionals who have joined from the commercial world, while others are ex-Researchers who picked up infrastructure skills as part of their career as a researcher, a classic example being the PhD or postdoc who as part of their duties looks after a small Linux cluster for their group, or helps their group deploy their application stack on supercomputers they have access to (or even the Cloud) so that other researchers can get on with their research.

What qualifications or skills do you need to be a Research Infrastructure Developer?

The very nature of this work means that qualifications are hard to come by and so the most important skills are creative problemsolving, a desire to be helpful and the kind of mind that doesn’t accept systems not working properly. Extremely useful technical skills to have (depending on the exact area) are Linux, shell, Python, debugging compiler/library issues, management of schedulers, file-systems and automation tools like Puppet or Ansible.

Benefits of having Research Infrastructure Developers

  • The infrastructure which underlies research is more reliable and sustainable.

  • Having experts build infrastructure frees up “brain capacity” of researchers to focus on research problems.

  • Sharing of best practices in infrastructure design across projects and the consolidation of hardware and software.