Senior Software Engineer & Team Leader - Experiment Management

Updated: about 1 month ago
Job Type: FullTime
Deadline: 14 Apr 2024

Based onsite at Diamond Light Source - some home working available

About Us

Diamond Light Source is the UK’s national synchrotron; a huge scientific facility designed to produce very intense beams of X-rays, infrared, and ultraviolet light. Our scientists use the light to study a vast range of subject matter, from new medicines and treatments for disease to innovative engineering and cutting-edge technology.

At Diamond we have just embarked upon a major upgrade of the facility, known as Diamond-II. Diamond-II will combine a new machine and new experimental labs, known as 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 senior software engineer within the DAQ group to lead the team supporting and developing DAQ software for Diamond’s Soft Condensed Matter  (SCM) and Crystallography  science groups.

This role involves technically guiding and leading the small team developing DAQ solutions for these science groups as well as contributing to those solutions. An important aspect of the role is prioritising and managing the development of competing work items, which can include new features, resolution of operational support issues and migration of capabilities from GDA to Athena. Software is developed following an Agile approach.

As a team leader 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 the beamline scientists and science group leaders to prioritise the work of your team and you will support the DAQ Core Team in 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, 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.

You should additionally be able to demonstrate the following essential capabilities:

  • Strong leadership and organisation.
  • Proven experience in managing small teams of software engineers.
  • Proven experience in providing technical leadership.

Benefits

Diamond offers an exceptional benefits package to support staff in achieving a positive work/life balance. This includes 25 days annual leave plus 13 days of statutory and company holidays, along with flexible working hours and an excellent pension scheme. Staff also have access to a range of amenities on site including a nursery, cafes, a restaurant and sports and leisure facilities.

Diamond will offer a salary commensurate with experience.

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 14th April 2024, however applications will be reviewed and interviewed on an ongoing basis until this vacancy is filled.



Similar Positions