Senior Software Engineer - Navigation and State Estimation (R3123)
Shield AI
What You'll Do:
- Research and develop advanced state estimation and navigation algorithms to ensure assured Position, Navigation, and Timing (PNT) in contested environments.
- Design, write, and deploy production-quality C++ software for aviation platforms requiring real-time, deterministic performance.
- Build and maintain comprehensive unit, integration, and system-level tests to validate navigation software performance under operational constraints.
- Develop modeling, calibration, and simulation tools for inertial and aided navigation technologies used in airborne platforms.
- Participate in agile-based product planning, feature definition, capacity estimation, and cross-team collaboration.
- Contribute to ongoing system performance evaluation, regression analysis, and V&V (Verification and Validation) efforts.
Required Qualifications:
- Strong proficiency in modern C++ (C++11 or newer) and professional experience developing software for embedded Linux systems.
- Experience designing and deploying state estimation algorithms (e.g., EKF, UKF) in real-world defense or aerospace applications.
- Familiarity with developing for constrained environments requiring deterministic timing and high reliability.
- Professional experience with continuous integration (CI) workflows and automated C++ testing.
- Practical understanding of inertial navigation systems (INS), GNSS integration, and navigation error modeling.
- Ability to deploy and maintain robust, efficient, production-level C++ code.
- Familiarity with MATLAB or Python for prototyping is acceptable; however, primary development experience must be in C++.
Preferred Qualifications:
- Experience developing and deploying assured PNT systems for DoD customers.
- Expertise calibrating and integrating IMUs, GPS receivers, magnetometers, and barometric sensors.
- Familiarity with alternative navigation techniques, such as celestial navigation, terrain-aided navigation, or vision-based navigation (VBN).
- Experience validating and verifying navigation systems in operational test environments.
Note:
- Candidates will be asked to complete a C++ coding exercise as part of the interview process to assess comfort with modern software design practices and system-level thinking.