Senior Software Engineer - Localization and State Estimation (R3123)
Shield AI
What you'll do:
- Research and develop state-of-the-art state estimation and navigation algorithms to enable resilient autonomy in challenging GPS-denied environments.
- Design and deploy production-grade C++ software for embedded robotic systems operating in dynamic, real-world environments.
- Build and maintain rigorous unit, integration, and system-level tests to ensure system robustness and safety.
- Develop and enhance modeling, calibration, and simulation tools for inertial and vision-based navigation systems.
- Contribute to roadmap planning, feature decomposition, and agile execution alongside a multidisciplinary team of autonomy engineers.
- Continuously enhance performance analysis, benchmarking, and validation pipelines to drive rapid innovation and improvement.
Required Qualifications:
- M.S. in Aerospace Engineering, Electrical Engineering, Robotics, Computer Science or a related field; Minimum 2+ years of related professional work experience if you have an M.S degree or 0 years if you have a new Ph.D graduate.
- Professional proficiency in modern C++ (C++11 or newer) and strong object-oriented design skills.
- Hands-on experience deploying low-latency C++ applications to embedded Linux platforms.
- Professional experience designing and implementing state estimation algorithms (e.g., EKF, UKF, Graph-based optimization).
- Familiarity with VIO, SLAM, or multi-sensor fusion frameworks (e.g., gtsam, Ceres, OpenVINS).
- Strong working knowledge of CI pipelines and automated testing frameworks for C++.
- Ability to independently deploy high-reliability code suitable for real-world autonomous systems.
- Familiarity with prototyping in Python or MATLAB is welcome, but this role demands professional C++ production deployment skills. Candidates whose primary experience is in MATLAB or Python are unlikely to find this position a good fit.
Preferred Qualifications:
- Deep understanding of graph-based optimization for state estimation.
- Experience developing vision-aided inertial navigation systems (VINS, VIO).
- Experience with navigation sensor calibration (IMU, GPS, barometers, magnetometers, laser altimeters).
- Experience in benchmarking and system validation for real-world navigation performance.
Note:
- Candidates will be asked to complete a practical C++ coding exercise as part of the interview process to demonstrate advanced proficiency in software design and system implementation.