Senior Algorithms and Simulation Software Engineer
Software Engineering
Devens, MA, USA
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
140000 - 200000 USD a year