Senior Embedded Software Engineer
Summary
Senior Embedded Software Engineer designing and verifying control software for fusion R&D equipment and machinery, working with real-time Linux, microcontrollers, and FPGAs using Python, C++, and Rust.
As a Senior Embedded Software Engineer, you will be responsible for the design, implementation, and verification of software and controls for advanced R&D equipment and complex machinery.
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 control software across multiple platforms, including real-time Linux, microcontrollers, and FPGAs
- Verify embedded software with Hardware-in-the-loop testbeds and field commissioning activities
- Improve software tooling to increase developer velocity and enable new capabilities
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 with embedded, real-time control systems
- Professional experience with producing production quality control 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 mission or safety critical systemsExperience with large-scale industrial systems
- Experience with large-scale industrial systems
- Familiarity with real-time Linux
- Familiarity with bare-metal micro controllers
- Familiarity with FPGA development
- Familiarity with common I/O protocols (SPI, CAN, serial, etc)
- 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*
