Primarily based onsite / some home working available About Us Diamond Light Source is the UK's national synchrotron science facility. By accelerating electrons to near light-speed, Diamond generates brilliant beams of light from infra-red to X-rays which are used for academic and industry research and development across a range of scientific disciplines including structural biology, physics, chemistry, materials science, engineering, earth and environmental sciences.
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 Data Acquisition Group The DAQ group develops software to interface with and orchestrate the hardware which allows experiments to be configured, performed, and monitored, as well as collecting and formatting scientific data. The group works closely with scientists, motion, and controls engineers to continuously develop and improve software solutions for scientific data acquisition and on-the-fly monitoring and visualisation. Typical experiments will generate tens of terabytes of data per day.
Data acquisition is currently managed by facility users with our open-source software package, GDA, which is responsible for configuring and executing experiments, and for the capture, visualisation, and storage of experimental data. GDA is a client-server application written in Java, making use of the Eclipse RCP framework. The GDA server communicates with beamline hardware via EPICS to provide a control and monitor capability and deliver high-level experimental functions. A GDA client provides both a GUI and a Python scripting capability for users to configure and control experiments locally.
To facilitate the advanced scientific capabilities that are expected from Diamond-II the Data Acquisition Software is being modernised and will result in a service-based architecture. The new Acquisition Platform, Athena, will be configured to deliver advanced capabilities for a new collection of State-of-the-Art Beamlines. The Eclipse UI will be replaced with a Web UI, designed using good UX principles.
Over the next few years existing beamline software will be migrated from GDA to Athena.
About the Role We now have an opportunity for a Software Engineer within the Diamond Data Acquisition (DAQ) group to support and develop the data acquisition software for experiments at Diamond. These experiments exploit single crystal X-ray diffraction to determine the structure of biological macromolecules, more generally referred to as macromolecular crystallography (MX). The determination of the structures of biological macromolecules such as proteins, nucleic acids and viruses by X-ray diffraction is a major activity within Diamond.
The MX experimental setups at Diamond are highly automated, enabling experiments to be planned and executed remotely. This provides an exciting opportunity to lead in the development of bespoke software to make experiments autonomous.
The MX DAQ team have already made significant progress in migrating beamlines from GDA to Athena.
As a Software Engineer in the DAQ Group you will work alongside other software engineers supporting a range of experimental techniques and developing DAQ capabilities in an open and collaborative environment. You will be required to interact with scientists and translate their specifications for scientific capabilities into software requirements.
You will liaise with controls, data analysis and information management engineers to put these requirements into action. You will collaborate with your MX DAQ team colleagues in the support and extension of DAQ solutions for the MX beamlines, and you will provide insight to the DAQ Core Team to influence the modernisation of the Acquisition Platform. You will also potentially participate in international collaborations within this domain, sharing best practice and supporting other facilities and synchrotrons within the collaboration.
Diamond is an exciting place to work. The work is both challenging and varied. With the upgrade of the beamline software architecture there is the opportunity to work with new and cutting-edge technology and approaches, such as containerisation, service-oriented software, modern Python paradigms and AI/ML. The new software architectural approaches offer greater opportunities for cross group and international cross facility collaboration.
About You You will be qualified to degree level in a STEM subject or equivalent, with experience in the full Software Development Lifecycle, using a modern high-level language, and with an understanding of good software design principles and design for usability.
Ideally you will have experience of writing software to control and monitor remote hardware in either the scientific, industrial, military or home automation sector and be familiar with the typical challenges and solutions presented by this kind of software application.
Please note that the focus of this role is not data processing or analysis but experiment configuration and monitoring, and scientific instrument orchestration and data collection.
Experience of working with large and complex code bases would be an advantage, as would experience of Python 3 (particularly the libraries that facilitate asynchronous computing), Java, Spring, JMS message-oriented middleware, Java RMI, the HDF5 file format, the Eclipse RCP platform, REST and Kubernetes.
You should display good communication, interpersonal and analytical skills, with a personal interest or experience in science. Practical experience of the Agile software delivery process would be an advantage.
To Apply Please use the online application process to apply and tell us why you believe you are suitable for this role.
The initial closing date for applications is 24 th November 2024, however applications will be reviewed and interviewed on an ongoing basis until this vacancy is filled.
#J-18808-Ljbffr