onsite
Senior Control Software Engineer - Commonwealth Fusion Systems
Software Engineer
Design and implement high‑performance control software for fusion reactors, leveraging C++, Python, real‑time Linux, and FPGA technologies to enable precise, reliable operation of complex plasma systems.
About the role
Key Responsibilities
- Architect, develop, and maintain real‑time control software for plasma confinement and power‑train systems.
- Integrate C++ and Python components within a Linux‑based control stack, ensuring deterministic performance and low latency.
- Design and implement FPGA firmware and driver interfaces to support high‑speed sensor acquisition and actuator control.
- Collaborate with hardware, physics, and systems engineers to translate experimental requirements into robust software solutions.
- Establish testing frameworks, simulation environments, and continuous‑integration pipelines for verification of control algorithms.
Requirements
- 5+ years of professional experience in real‑time embedded software development, preferably in high‑energy or scientific applications.
- Strong proficiency in C++ (C++14/17) and Python, with a solid understanding of Linux kernel and real‑time extensions.
- Hands‑on experience designing, programming, and debugging FPGA‑based systems (e.g., VHDL/Verilog, High‑Level Synthesis).
- Demonstrated ability to work cross‑functionally, translating complex physics requirements into reliable control code.
- Experience with version control, CI/CD, and automated testing for safety‑critical software.