Research Software Engineer
Role details
Job location
Tech stack
Job description
You'll work closely with our R&D teams to design, build, and maintain software tools that support our research and commercial projects. You'll combine your software engineering expertise and understanding of scientific research to ensure our work is efficient, reproducible, and scalable.
This role offers the best of the academic and commercial worlds: a research-focused environment with the energy and pace of an ambitious technology company.
Duties include:
- Collaborating with researchers to develop efficient, reproducible workflows for data analysis and algorithm development.
- Supporting and maintaining a suite of software tools that directly support Perspectum's commercial services.
- Managing the validation and distribution of these tools including maintaining infrastructure for CI/CD and collaborating with our Quality Assurance teams.
- Writing clear documentation, delivering training, and presenting to internal audiences.
Requirements
To be a successful RSE, you will enjoy solving scientific problems with software and working in a collaborative research environment. We are looking for someone who has:
-
A degree in a scientific or related field e.g. Physics, Biological Sciences etc (an MSc or PhD would be highly beneficial).
-
Professional (or open source) experience building software as part of a team, including substantial experience with common DevOps tools (version control, unit testing frameworks, issue tracking etc).
-
Strong programming skills in a high-level language (e.g. MATLAB, Python).
-
An understanding of the software development lifecycle and a strong interest in software design principles
-
Excellent communication skills with the ability to confidently communicate complex ideas to both technical and non-technical audiences.
-
Attention to detail, a curious mindset and a passion for finding elegant solutions to complex problems.
Please note this role is based in our research team rather than our software engineering team. It is therefore important that you have a solid understanding of research processes to be successful in this role.