Controls Software Engineer

NusanoWest Valley City, UT
Onsite

About The Position

The Controls Software Engineer owns controls software end-to-end with general direction. This role designs, develops, validates, integrates, and supports PLC, HMI/SCADA, networking, services, and related controls software for scientific and industrial systems. The engineer makes day-to-day technical decisions within assigned scope, applies user experience and safety best practices, troubleshoots hardware and software interfaces, and contributes to controls standards and team knowledge. This is a full-time, onsite position at Nusano's facilities in West Valley City, Utah.

Requirements

  • Bachelor's degree in Computer Science, Electrical Engineering, Computer Engineering, Physics, or a related technical field.
  • Professional experience developing controls software in an industrial, manufacturing, scientific, or comparable technical environment.
  • Proficiency with IEC 61131-3 controls languages, including Structured Text and/or Ladder Logic.
  • Experience creating or maintaining HMI/SCADA software and applying industrial UI/UX best practices.
  • Ability to interpret electrical schematics, one-line diagrams, and P&ID drawings.
  • Working knowledge of networking fundamentals, industrial communication protocols, and distributed controls architecture.
  • Experience troubleshooting PLCs, network devices, instrumentation, hardware/software interfaces, and controls systems.
  • Working knowledge of source control and code-branch management, preferably Git.
  • Strong written and verbal communication skills with the ability to document technical decisions and collaborate across functions.

Nice To Haves

  • EPICS, Beckhoff controls, or other large-scale distributed control systems.
  • Working in an R&D, commissioning, accelerator, or safety-controlled environment.
  • One or more high-level programming languages, such as C++, Java, C#, or Python.
  • Linux operating systems and object-oriented programming practices.
  • Test-driven development, automated testing, or comparable software quality practices.
  • Troubleshooting complex controls systems that combine PLC, instrumentation, networking, and scientific equipment.

Responsibilities

  • Own the design, development, testing, integration, and qualification of assigned controls software workstreams for medium-complexity distributed systems, including systems with approximately 200 to 500 I/O points.
  • Create new PLC software and modify existing PLC software in accordance with software design specifications, functional requirements, and controls engineering standards.
  • Design, maintain, and improve HMI/SCADA applications using industrial user experience, operator interface, alarm-management, and safety best practices.
  • Partner with operations, physicists, engineers, and technical specialists to integrate hardware and software systems and support scientific and industrial equipment connected to the PLC environment.
  • Integrate PLC software with Server based control systems, such as EPICS or similar SCADA control system frameworks.
  • Troubleshoot and debug PLCs, industrial networks, communication interfaces, instrumentation, controls hardware, and software during development, commissioning, and operations.
  • Apply networking fundamentals and industrial communication protocols such as EtherCAT, Modbus, and RS-232/485 to controls system design and troubleshooting.
  • Participate in hazard analyses and design reviews, identify software-related safety risks, and implement appropriate controls safeguards.
  • Develop software design documentation, test plans, operator and training materials, troubleshooting guides, and knowledge-base content.
  • Mentor Associate engineers on controls software tools, coding practices, and troubleshooting methods, and communicate risks or blockers early with clear technical context.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service