Teleoperation Systems Engineer
Own the full stack behind piloting a robot: operator hardware, latency budget, backend services and live 3D visualisation.
About the role
Piloting a robot should feel immediate, informative and intuitive. You will own the full stack behind that experience: operator hardware, the end-to-end latency budget, the backend services under the interface, and the live 3D visualisation that shows pilots what the robot is doing and feeling, and when it needs help.
What you'll do
- Own the pilot's control hardware (headset, body tracking, haptics) and the quality of the mapping from operator to robot motion
- Own the full latency budget: capture, encode, transport, display
- Build and own the backend services the operator surface depends on
- Build live robot state visualisation: a pilot-friendly interface that non-technical members can use
- Build stuck-and-failure visualisation so pilots see what's needed and how to take over
- Collaborate with the humanoid software teams to integrate the teleoperation stack
What we look for
Some combination of the following:
- Real-time systems experience with a human in the loop, and a habit of instrumenting before optimising
- End-to-end latency budgeting across a heterogeneous stack — you find the bottleneck, not just the total
- Practical robot state visualisation experience: URDF, TF trees, Foxglove / RViz / Rerun
- Full-stack range: comfortable owning backend services as well as the interface
- Calibration and time-sync literacy: extrinsics, hand-eye, clock alignment across hosts
Tech stack
- Advanced experience with Python, C++, Linux, Git
- WebRTC or equivalent low-latency video, hardware video encode
- Clock synchronisation (PTP or equivalent), calibration tooling
- Operator hardware integration: motion controllers, HMDs or equivalent
Bonus experience
- VR, XR or motion-capture tools
- Motion retargeting and IK for operator control
- Haptics or force feedback
- Design sense for operator interfaces
- Simulation tools like NVIDIA Isaac Sim or MuJoCo
