Posted 4mo ago

Senior Firmware Engineer

@ Helion
Everett, Washington, United States
OnsiteFull Time
Responsibilities:Develop firmware, Collaborate hardware, Bring up boards
Requirements Summary:8+ years embedded systems in C/C++/Rust; BS or higher in EE/CE/CS; real-time MCU; Linux; hardware bring-up; multiple communication protocols.
Technical Tools Mentioned:C, C++, Rust, RTOS, UART, SPI, I2C, CAN, EtherCAT, Git, Python, Linux
Save
Mark Applied
Hide Job
Report & Hide
Job Description

What You Will Be Doing:

As a Senior Firmware Engineer, you will develop the embedded systems that power the control, diagnostics, and protection layers of our fusion machines. You’ll write and maintain firmware that runs on thousands of distributed embedded devices controlling and monitoring tens of thousands of sensors, actuators, and data channels. This role bridges hardware and software — you’ll work closely with electrical and software engineers to design reliable, scalable, and high-performance control and data acquisition systems. You’ll help define communication protocols, improve time synchronization across embedded networks, and automate hardware bring-up and testing. This position is ideal for an engineer who enjoys working close to the metal, debugging complex systems, and rapidly iterating on real-world hardware to make fusion power a practical reality. This role requires onsite presence, and you will report directly to our Lead Electrical Engineer at our Everett, WA, office.

You Will:

  • Develop, test, and maintain firmware for real-time embedded systems used in machine control and diagnostics.

  • Work closely with hardware and software engineers to translate system requirements into embedded designs.

  • Bring up new boards, sensors, and actuators — debugging with oscilloscopes, logic analyzers, and JTAG interfaces.

  • Implement and maintain low-level communication protocols (UART, SPI, I²C, CAN, EtherCAT, etc.).

  • Design and refine embedded command interfaces, configuration utilities, and automated test frameworks.

  • Optimize performance, reliability, and timing synchronization across distributed embedded systems.

  • Contribute to continuous improvement of embedded toolchains, build systems, and test automation.

  • Rapidly prototype novel control and measurement concepts to support new machine architectures.

  • Collaborate across disciplines to ensure firmware integrates seamlessly with high-level software and data systems.

Required Skills:

  • BS or higher in Electrical Engineering, Computer Engineering, or Computer Science.

  • 8+ years of experience developing embedded systems in C, C++, and/or Rust.

  • Experience with real-time MCU development (bare metal or RTOS-based).

  • Strong understanding of digital communication protocols (UART, SPI, I²C).

  • Familiarity with mixed-signal circuit design and debugging using oscilloscopes, DMMs, and logic analyzers.

  • Experience with version control systems (Git).

  • Scripting experience in Python for automation, hardware bring-up, or testing.

  • Solid grasp of embedded systems fundamentals: power, timing, data, and memory budgets.

  • Experience developing and debugging on Linux-based systems.

#LI-Onsite #LI-KL1