Software Engineer – Systems & Real-Time (RTOS / HIL)
Architects and implements real-time systems for HIL test automation using C++ or Rust, focusing on deterministic scheduling, field bus communication, and low-latency integration with hardware like embedded targets and sensors. Requires 4+ years in systems/embedded software with RTOS experience.
Responsibilities
- Design and implement hard real-time components for data acquisition, control, and simulation using C++ and/or Rust.
- Develop deterministic communication layers for CAN, EtherCAT, serial, and MIL-STD-1553 or similar field buses.
- Architect the core HIL runtime, including task schedulers, timing controllers, and synchronization primitives.
- Integrate with embedded targets, flight computers, and sensor networks to validate autonomy and control software.
- Collaborate with infrastructure and visualization teams to connect real-time execution with distributed telemetry, playback, and analysis pipelines.
- Profile, benchmark, and harden low-latency systems to meet microsecond-level timing guarantees.
- Establish testing and verification standards for real-time correctness and timing determinism across the platform.
Requirements
- 4+ years of systems-level or embedded software development in C++ (C++17 or newer) or Rust, with deep understanding of real-time constraints and deterministic scheduling.
- Experience with RTOSs such as QNX, RTEMS, FreeRTOS, VxWorks, or Linux PREEMPT-RT.
- Background in HIL or SIL testing, real-time control loops, or simulation frameworks for aerospace, automotive, or robotics.
- Strong grasp of hardware interfaces, timing jitter, interrupt handling, and low-level I/O.
- Familiarity with signal acquisition, control systems, and sensor fusion concepts.
Nice-to-Haves
- Experience with LabVIEW, NI TestStand, PXI/DAQ systems, or integration with external test equipment.
- Knowledge of time-synchronized networking (PTP/NTP), DDS, or real-time middleware (ROS 2, RTI Connext).
- Ability to debug at multiple layers — from driver-level to distributed telemetry — and reason clearly about timing and causality.
Compensation
Base pay range: $130,000 – $230,000 per year.
Software Engineer, Sensor Platform
Design and develop sensor and compute systems for autonomous vehicles. Requires 2+ years experience, C++ proficiency, embedded/real-time systems expertise, and robotics or autonomous driving domain experience.
Autonomy Software Engineer – Path Planning
Develop and integrate core path planning algorithms for autonomous aerial systems (UAVs, fighter aircraft) supporting military missions. Requires 3-5 years experience with sampling/grid-based planning methods, C++ or Python, and outer-loop control systems.
Staff Engineer, Electrical Integration & Test
Lead design and deployment of advanced test systems and frameworks for aerospace UAV hardware, including software architecture, automation, and cross-functional validation in high-reliability environments.