Controls Software Engineer
Listed on 2026-07-09
-
Software Development
Software Engineer, Python, Unix/Linux, DevOps
Lawrence Berkeley National Laboratory is hiring a Controls Software Engineer within the Engineering division. This position will support the development, deployment, maintenance and enhancement of software systems that enable operations of the Advanced Light Source (ALS), a world‑class synchrotron user facility. Working within a collaborative team of software engineers, scientists and technical staff, the incumbent assists in the design and implementation of EPICS‑based control system applications, Physics Higher Level Applications, graphical user interfaces and data management tools that support accelerator and beamline operations.
Under general supervision, the Associate Software Developer applies established software engineering principles and development methodologies to complete assigned tasks and contribute to project objectives.
The position participates in software development, testing, documentation, commissioning and operational support activities while gaining experience with accelerator control systems and scientific computing environments. Occasional off‑hours support may be required to help maintain reliable operation of this 24/7 user facility.
Responsibilities- Develop, test, deploy, and maintain control system software using EPICS and associated software development tools.
- Assist in the development and enhancement of graphical user interfaces, operator displays, data logging applications, and other software tools used for accelerator and beamline operations.
- Develop and support Physics Higher Level Applications for the ALS accelerator complex using Python, MATLAB and related scientific computing tools under the guidance of senior staff.
- Participate in software integration, testing, troubleshooting and validation activities to support operational and project objectives.
- Assist with commissioning new controls and software applications in collaboration with engineers, scientists and technical personnel.
- Diagnose and resolve routine software issues, escalating complex problems as appropriate.
- Create and maintain technical documentation, user guides, software specifications and development records related to assigned work.
- Present work progress, technical findings and project updates during team meetings and technical discussions.
- Follow established software development methodologies, coding standards and quality assurance practices.
- Participate in team activities related to source control, code review, issue tracking, testing and continuous improvement of development processes.
- Collaborate effectively with software developers, accelerator physicists, engineers and operations staff to support ALS scientific and operational goals.
- Bachelor’s degree in Computer Science, Engineering, Computational Biology or a related field, or an equivalent combination of education and relevant experience.
- 2 years of experience in software development or related technical work (including internships, academic projects or research experience).
- Experience developing software applications using one or more modern programming languages such as Python, C++, Java or similar languages.
- Experience with software development tools and practices including version control systems such as Git.
- Demonstrated ability to learn new technologies and technical concepts in a collaborative environment.
- Effective written, verbal and interpersonal communication skills.
- Foundational knowledge of software engineering principles, programming concepts and software development life cycle methodologies.
- Understanding of object‑oriented programming, data structures, algorithms and software design practices.
- Development experience with MATLAB, Python and C/C++ programming languages.
- ML/LLM models knowledge and implementation experience on software code.
- Basic understanding of Linux/UNIX environments and software development tools.
- Ability to develop, test, debug and maintain software applications under guidance from senior developers.
- Ability to use version control systems and collaborative development tools.
- Technical writing skills sufficient to prepare clear documentation and reports.
- Analytical and problem‑solving skills for identifying…
(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).