Software Developer, Experiment Controls
Listed on 2026-05-31
-
Software Development
Software Engineer, Python
Position Overview
Are you a software engineer motivated by building applications that power scientific discovery? Does contributing to breakthrough discoveries in science and working with unique experimental instrumentation in a world‑leading scientific research environment excite you? The Experiment Control Systems (ECS) division within the Linac Coherent Light Source (LCLS) Directorate at SLAC is seeking a Software Developer to join the Engineering and Design controls team.
The Software Developer will primarily develop and maintain Python and C/C++ based applications and automation scripts that serve as an important interface for controlling complex experiments to advance scientific research.
LCLS is the world’s first hard x‑ray free electron laser (XFEL) with unprecedented capabilities in photon energy range, peak power, and pulse lengths. There are 8 independent instruments currently in operation, which are specifically designed to utilize the exceptional beam characteristics of the LCLS to probe the structure and dynamics of matter at atomic size and timescales.
Responsibilities- Develop, maintain, and own high‑level Python and C/C++ applications and libraries that are essential for experiment operations, instrument control, and data acquisition.
- Collaborate with scientists and engineers to translate experimental requirements into well‑designed, reliable, and maintainable software solutions.
- Troubleshoot and resolve complex issues in the software application stack, from user graphical interfaces down to communication with the EPICS control system infrastructure.
- Contribute to collaboration with other team members and international groups on public and private software packages on Git Hub, including reviewing peer‑submitted code.
- Develop and refine engineering processes and tools, contributing to strategic improvements and long‑term system reliability.
- Bachelor’s degree in Physical Sciences, Computer Engineering, Computer Science, or a closely related field, and five years of relevant experience or a combination of education and relevant experience.
- Strong proficiency in Python and Python GUI development (PyQt).
- Experience working with C/C++ code development and maintenance.
- Experience with version control systems, particularly Git, and collaborative development workflows.
- Experience performing end‑to‑end ownership of tasks, including project management, schedule, and stakeholder management.
- Experience working in cross‑disciplinary teams or environments.
- Effective communication skills (written and verbal).
- Experience with EPICS (Experimental Physics and Industrial Control System) development.
- Familiarity with EPICS Channel Access (CA) and/or PV Access (PVA) protocols.
- Experience working in a scientific, research, or academic environment.
- Extensive experience working in Linux environments, preferably RHEL or Rocky Linux.
- Good understanding of network architecture and operational technology systems.
- Familiarity with control systems concepts and infrastructure.
- Experience leveraging AI models and tools to accelerate development and build AI applications that improve operational effectiveness.
- M.Sc. in Computer Engineering/Science, Physical Science, or a closely related field.
Classification
Title:
Software Developer 2
Job code: 4822 Grade: J
Duration:
Regular Continuing
Pay Range: $138,402 – $163,985 per annum
#J-18808-Ljbffr(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).