At a Glance
- Tasks: Enhance software performance and collaborate with researchers in cutting-edge physics fields.
- Company: Durham University, a leading UK institution known for excellence in research and teaching.
- Benefits: Full-time role with a commitment to inclusivity and flexible working arrangements.
- Other info: Access to state-of-the-art HPC facilities and opportunities for career growth.
- Why this job: Join a dynamic team and make a real impact on groundbreaking scientific research.
- Qualifications: Proficiency in C/C++ and Python; knowledge of Fortran is a plus.
The predicted salary is between 35000 - 45000 £ per year.
This role is for a Research Software Engineer within a High Performance Computing team in the Department of Physics, who will perform activities such as improving the performance of existing codes on large systems, implementing more efficient algorithms, and liaising with researchers to identify their requirements. The research areas for these codes are likely to be in the fields of cosmology, astrophysics, particle physics and nuclear physics.
The Department of Physics at Durham University is one of the leading UK Physics departments with an outstanding reputation for excellence in teaching, research and employability of our students. The Department is committed to advancing equality and we aim to ensure that our culture is inclusive, and that our systems support flexible and family-friendly working, as recognized by our Juno Champion and Athena SWAN Silver awards. We recognise and value the benefits of diversity throughout our staff and students.
The Institute for Computational Cosmology (ICC) within the Department of Physics performs world‑leading research with a high international reputation and is one of the largest groups in Europe dedicated to theoretical cosmology. The ICC operates and maintains a high performance computing (HPC) facility, COSMA, on behalf of DiRAC, a UK national facility. This service constitutes the largest academic system in the North of England and is designed to support scientific workflows which require large RAM volumes, for example cosmological simulation.
This role will be engaged with providing Research Software Engineering support for DiRAC and the ICC. Key tasks will be the improvement and development of major scientific codes, and the investigation of code performance on DiRAC services. The applicant will work with leading scientific teams to perform tasks such as code optimisation, porting to different computational architectures (which may include GPUs), and analysis of performance benchmarks. The applicant will have access to cutting edge HPC research facilities including new and novel hardware.
The applicant will also be engaged with performance benchmarking on prototype hardware to aid and guide future purchasing decisions, having a real impact on the direction of future UK HPC provision. The applicant should have a good understanding and working knowledge of C/C++ and Python. Some knowledge of Fortran would be helpful. The applicant will be using parallel scientific codes which run on multiple servers simultaneously, using middleware such as MPI. These codes will be focused on subject areas within the STFC remit, namely cosmology, particle physics and nuclear physics and the applicant will be able to work with scientists and other RSEs from across the UK.
Research Software Engineer in London employer: Durham University
Contact Detail:
Durham University Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Research Software Engineer in London
✨Tip Number 1
Network like a pro! Reach out to current or former employees at Durham University, especially in the Physics department. A friendly chat can give us insider info and might even lead to a referral.
✨Tip Number 2
Show off your skills! Prepare a portfolio of your coding projects, especially those related to HPC or scientific computing. We want to see how you tackle real-world problems, so make it shine!
✨Tip Number 3
Practice makes perfect! Get ready for technical interviews by brushing up on C/C++ and Python. We recommend doing mock interviews with friends or using online platforms to simulate the experience.
✨Tip Number 4
Apply through our website! It’s the best way to ensure your application gets seen. Plus, we love seeing candidates who take the initiative to apply directly!
We think you need these skills to ace Research Software Engineer in London
Some tips for your application 🫡
Tailor Your CV: Make sure your CV is tailored to the Research Software Engineer role. Highlight your experience with C/C++, Python, and any relevant HPC projects. We want to see how your skills align with our needs!
Craft a Compelling Cover Letter: Your cover letter is your chance to shine! Share your passion for physics and software engineering, and explain why you’re excited about working with us at Durham University. Let your personality come through!
Showcase Relevant Projects: Include any projects that demonstrate your coding skills and experience with parallel computing. If you've worked on performance optimisation or scientific codes, we want to hear about it!
Apply Through Our Website: Don’t forget to apply through our website! It’s the best way to ensure your application gets to us directly. Plus, you’ll find all the details you need about the role and our team there.
How to prepare for a job interview at Durham University
✨Know Your Code Inside Out
Make sure you’re well-versed in C/C++ and Python, as these are crucial for the role. Brush up on your knowledge of parallel computing and middleware like MPI, and be ready to discuss specific projects where you've optimised code or improved performance.
✨Understand the Research Landscape
Familiarise yourself with the research areas mentioned in the job description, such as cosmology and particle physics. Being able to discuss how your skills can contribute to these fields will show your genuine interest and understanding of the role.
✨Prepare for Technical Questions
Expect technical questions that assess your problem-solving skills and coding abilities. Practice coding challenges related to optimisation and algorithm efficiency, as these will likely come up during the interview.
✨Show Your Collaborative Spirit
This role involves liaising with researchers, so be prepared to talk about your experience working in teams. Highlight any collaborative projects you've been part of, especially those that required communication with non-technical stakeholders.