About Us
Software helps to enable the world-leading science performed at Diamond. Our software systems facilitate operations at all levels, including the low-level control of synchrotron and beamline hardware, the planning, execution and monitor of experiments, data archiving and retrieval, data processing and visualisation, the application for beamtime, and capture of remote experiment plans and samples. Our software engineers work alongside our scientists to develop innovative and robust solutions to keep Diamond at the forefront of scientific research.
At Diamond we are currently undertaking a major upgrade of the facility, known as Diamond-II. Diamond-II will combine a new machine and new beamlines with a comprehensive series of upgrades to optics, detectors, sample environments, sample delivery capabilities and computing, which will ultimately generate an even more brilliant light source at a higher energy.
About the Role
We now have an opportunity for a Software Engineer to join us to develop and support cutting-edge scientific software. Effective information management is essential for Diamond to conduct its critical work; providing scientists the tools to turn theoretical science into practical and often life-changing discoveries. A critical component of Diamond's software architecture is its Laboratory Information Management System (LIMS) and Data Archive. Diamond’s LIMS is a web application that captures the full lifecycle of experiments at Diamond. LIMS enables scientists from all over the world to plan and prepare their experiments, facilitates integration and interoperability with data analysis tools and provides visualisation of experimental activity and results. The Data Archive provides long-term storage of data produced and analysed at Diamond, and underpins the Open and FAIR Data program, where data will be made publicly accessible to enable future scientific research.
Diamond is developing a new LIMS system to meet the needs of the whole facility, and the demands of new science unlocked by the upgrade to Diamond-II, so we are seeking to develop a new, universal, solution leveraging service-oriented architecture. Diamond is also developing a new data archiving system, using cloud container technologies to meet the increased data flow requirements of Diamond-II and to fulfil the Open and FAIR Data project. These projects make for an ideal opportunity for you to grow and develop with a world leading science facility or utilise the skills and experience you already have in this rewarding role.
You will be working alongside a bright and motivated team in an open and collaborative environment. You will be required to interact with Diamond scientists and translate their specifications for scientific capabilities into software requirements. You will also participate in international collaborations within this domain, developing software that can support other facilities and synchrotrons within the collaboration.
About You
You will have a degree level qualification in science, engineering, mathematics, computer science or equivalent experience, as well as have experience and knowledge in the following areas:
- Full Software Development Lifecycle.
- Software development experience in a technical software environment.
- Developing backend functionality and applications in Python.
- Unit test frameworks such as Pytest.
- Knowledge of SQL databases such as PostgreSQL.
- Knowledge of agile practices (specifically Scrum).
- Be able to work across multiple projects and systems, and interface with other software development and IT teams delivering other science services.
- Working with and contributing to open-source software to meet the needs of user communities.
- Good commutations skills and the ability to interpret scientific needs into clear software requirements.
- An interest in supporting scientific stakeholders coupled with strong analytical and communication skills is also essential.
- JavaScript skills with experience with JavaScript web application frameworks such as React or Angular would be an advantage.
We use an open-source development model in a not-for-profit institution, so knowledge of GitHub / GitLab would be useful. The remote systems provide the shop window to all services, so a passion for UX and quality are essential.
Benefits
Diamond offers an exceptional benefits package to support staff in achieving a positive work/life balance. This includes 26 days annual leave plus Christmas closure, public holidays, 2 annual volunteering days and flexible working hours. We also offer an excellent defined benefit pension scheme. Staff also have access to a range of amenities on site including a nursery, cafes, a restaurant and sports and leisure facilities. A relocation allowance may also be available where applicable.
To Apply
Please use the online application process to apply and tell us why you believe you are suitable for this role.
The closing date for applications is 12th January 2025, however, we encourage early applications as some candidates may be interviewed before this date.