Senior Algorithms and Simulation Software Engineer
Summary
Design and implement state estimation and control algorithms for real-time fusion energy systems, using Python and C++/Rust to build and validate mission-critical software.
In this role you will be responsible for the design and implementation of state estimation and control algorithms, plus models and simulation frame works necessary to verify those algorithms. Your algorithms will be used in critical real-time applications in the SPARC project, as well as related projects.
As a member of the Software Engineering team, you will be a hands-on technical contributor. You will be a champion of writing excellent quality, production-ready code for mission-critical real-time systems. You will collect functional requirements from customers and produce software solutions to meet these requirements.
You will work with a variety of engineers to integrate your software into software testbeds, hardware testbeds, and the production tools. You will also contribute to the broader software ecosystem to improve tooling and processes used across the company.
What you'll do:
- Develop mission-critical state estimation and control algorithms
- Develop software infrastructure to operate Hardware-in-the-Loop (HITL) and software-only testbeds
- Develop simulation models and model infrastructure for both real-time and off-line (high fidelity) simulations
- Develop offline data analysis tools
- Help define and execute end-to-end and other integrated test cases and test plans to validate SPARC control software
What we’re looking for:
- Bachelor's degree in a relevant engineering field (computer science, computer engineering, electrical engineering, industrial engineering, etc.)
- 7+ years relevant experience
- Professional experience writing real-time state estimation and control algorithms
- Professional experience writing production quality state estimation and software
- Experience with modern software development lifecycle practices (CI/CD, git version control, unit testing, integration testing, etc)
- Proficiency with python
- Proficiency with at least one real-time control language (c++, rust, etc)
Bonus points for:
- Experience with Hardware-in-the-Loop testbeds and software-only testbeds for validating control software
- Experience writing models to validate software
- Familiarity with Linux
- Familiarity with general networking (IP/UDP)
Must-have Requirements:
- Perform activities such as typing, standing, sitting, etc. for extended periods of time
- Dedication to safety to mitigate industrial hazards that may include heat, cold, noise, fumes, strong magnets, lead (Pb), high voltage, high current, pressure systems, and cryogenics
- Willingness to occasionally travel or work required nights/weekends/on-call
As published by lever
Resume/CV, Full name, Pronouns, Email, Phone, Current location, Current company, LinkedIn URL, Twitter URL, GitHub URL, Portfolio URL, Other website
- Please Upload a Cover Letter upload · optional
- Please tell us what interested you to apply to CFS written answer · optional
- If offered a position at CFS, will you be able to start within 3 weeks? choose one
- Optional: Additional information may be added in reference to a start date. written answer · optional
- The following question is asked for the purpose of ensuring compliance with U.S. Export Control Laws. Are you one of the following: a U.S. citizen, a U.S. national, a lawful permanent resident of the U.S. (e.g. green card holder), or a protected individual as defined by 8 U.S.C. 1324b(a)(3) (e.g., a refugee or asylee)?* choose one
- If you answered “No” to the above, please provide the country or countries of which you are a current citizen or national, and if applicable, where you are currently granted lawful permanent resident status. If you answered “Yes,” please enter N/A*