Perception Simulation Engineer II/III
We are looking for a Perception Simulation Engineer to build the sensor-simulation and synthetic-data backbone of our Unreal Engine simulation environment. Where a general mission-simulation engineer builds worlds and vehicle dynamics, this role is focused specifically on making simulated perception good enough to develop and validate real perception and target-tracking software before flight — high-fidelity RGB and thermal (IR) camera models, sensor feeds streamed onto ROS 2 topics, and synthetic data pipelines that feed our detection, tracking, and Target State Estimation (TSE) stacks.
You will work at the seam between the Unreal Engine and perception pipelines, turning "we can render a scene" into "we can trust the perception numbers coming out of the sim." This is a foundational effort.
We welcome both generalists and specialists—you do not need every skill listed below.
Responsibilities:
Synthetic Sensor Modeling (core of the role)
Build high-fidelity RGB and long-wave IR (thermal) camera models in Unreal Engine, and render both views from platform-mounted cameras.
Tune simulated camera output to match (or closely approximate) real-world camera performance — FOV, resolution, framerate, thermal response — driven by the specs of the sensors we actually fly (e.g. FLIR Boson / Boson+ LWIR).
Implement realistic sensor noise, artifacts, motion blur, and failure modes so perception software is tested against hard cases, not clean renders.
Support camera articulation independent of vehicle orientation (gimbal/boresight), so control-envelope requirements can be derived directly from camera specs.
ROS 2 Integration
Publish simulated camera imagery and sensor data onto ROS 2 topics using the shared strive_msgs / strive_interfaces contracts, so the same interface serves sim and hardware.
Implement and test developer contracts and fulfill deterministic simulation requirements.
Feed the perception pipeline and downstream Target State Estimation (TSE) with simulated sensor streams and ground-truth labels for evaluation.
Synthetic Data & Target Simulation
Build synthetic-data generation and export pipelines (imagery + bounding boxes / segmentation / range + pose ground truth) suitable for training and evaluating detection, tracking, and TSE models.
Implement target injection: spawn and drive targets (vehicles, people, infrastructure) with configurable motion, including dynamic add/remove during a running mission to simulate delayed deployments and dynamic scenarios.
Support target-hint / track integration based on ground based sensor tracking and ground-truth generation for scoring TSE accuracy (position/velocity/acceleration error).
Asset & Scenario Pipeline
Own the process to import external target CAD (e.g. TurboSquid) and Zone 5 platform CAD into the sim as usable, correctly-scaled models.
Manage the 3D asset pipeline (models, materials, thermal material properties for the IR view).
Enforce scenario-driven rules that need perception ground truth — e.g. inter-platform/target proximity and fratricide detection (position of each entity per timestep, squared-distance comparison against a scenario parameter for performance).
Performance & Scale
Optimize rendering for real-time and accelerated modes; build headless simulation modes for large-scale parallel scenario execution.
Collaborate with the platform team to run perception sim in CI/CD for continuous evaluation of perception/TSE software.
Qualifications:
Bachelor's in Computer Science, Computer Engineering, Robotics, Game Development, or related field — equivalent industry experience welcome.
3–6+ years developing in Unreal Engine with C++, including custom plugins/modules.
Working knowledge of ROS 2 and integrating it with a simulation environment.
Solid grounding in 3D graphics, real-time rendering, and camera/sensor models — projection, FOV, framerate, noise, and how they affect a downstream vision algorithm.
Practical understanding of camera-based perception (detection/tracking) and what makes synthetic imagery useful (or useless) for developing it.
Comfortable with software architecture, design patterns, and collaborative version-control workflows.
Preferred:
Experience building sensor simulation for robotics/autonomous vehicles, especially thermal/IR or multi-modal (EO/IR/lidar/radar) sensing.
Familiarity with synthetic data generation for ML perception (labels, sim-to-real gap, domain randomization).
Knowledge of state estimation / multi-target tracking (Kalman/EKF, track-to-track association) enough to build meaningful TSE test scenarios.
Experience with edge perception deployment (NVIDIA Jetson, TensorRT) and matching sim interfaces to on-target interfaces.
Familiarity with UAV flight dynamics (JSBSim/PX4 SITL), gimbal/boresight modeling, and camera-on-platform geometry.
GPU programming / compute shaders; procedural terrain or environment generation.
Python for tooling and data-pipeline automation; Blueprint for rapid prototyping.
3D asset workflows (Blender/Maya) or photogrammetry; distributed/networked simulation.
CI/CD for game-engine projects; deterministic / real-time simulation experience.
Pay range for this role
$145,000—$175,000 USD