Jobs · Engineering · Tennessee

Control System Software Engineer

Oak Ridge National Laboratory · Oak Ridge, TN · 2 wk ago
EngineeringFull-time

Major Duties and Responsibilities

  • Support the scientific mission of SNS by developing reliable, maintainable software for accelerator and target control systems as part of a multidisciplinary team.
  • Collaborate with group members, scientific staff and operations personnel to design, develop, maintain, and improve EPICS-based control systems.
  • Maintain and support existing production software, including performing troubleshooting and resolving bugs.
  • Create and maintain software documentation and accompanying training materials.
  • Adhere to Software Quality Assurance procedures, including managing source code in a central repository with version control systems and developing comprehensive software testing procedures.
  • Provide operational support, troubleshooting, and system improvements for accelerator and target control systems. While typical work hours are office-based, occasional off-hours or weekend support may be required to meet user facility needs.
  • Ensure compliance with environmental, safety, health, and quality procedures and programs.
  • As a member of the ORNL scientific community, commit to ORNL’s Research Code of Conduct.
  • Deliver ORNL’s mission by aligning behaviors, priorities, and interactions with our core values of Impact, Integrity, Teamwork, Safety, and Service. Promote equal opportunity by fostering a respectful workplace – in how we treat one another, work together, and measure success.

Basic Qualifications

  • A BS degree in engineering, computer science or related field plus two or more years of relevant experience (a relevant MS degree will be considered with at least one year of experience)
  • Demonstrated experience with embedded systems and/or systems programming
  • Experience developing applications or systems programming in a Linux environment
  • Demonstrated programming experience in modern object-oriented programming languages, preferably C++
  • Proficiency with collaborative software development tools and practices, such as software debugger, version control, issue tracking, documentation

Preferred Qualifications

  • Experience with EPICS or a similar toolkit for developing distributed control systems
  • Exposure to additional programming languages, such as C, Python, Java or similar
  • Familiarity with real-time operating systems and software practices
  • Prior experience working in a scientific user facility
  • Experience with GitLab and CI/CD pipelines
  • Hands-on experience with in-field troubleshooting of software and hardware interfaces

Similar jobs

Control System Engineer

Flux ResourcesNew York, NY· 5 days ago
Engineering$96.15–$120.19/hrapply on careers.workwithflux.com

Control System Engineer

Naval Nuclear Laboratory (FMP)Niskayuna, NY· 4 mo ago
Engineering$95k–$148k/yrapply on career-hcm03.ns2cloud.com