Search by job, company or skills

octobotics tech

Robotics Engineer - ROS2 / C++

new job description bg glownew job description bg glownew job description bg svg
  • Posted 11 hours ago
  • Be among the first 10 applicants
Early Applicant

Job Description

We are not looking for someone to maintain old code. We are looking for an Architect to lead this migration. You will deal with the pain of bridging ros1_bridge, porting custom messages, and rewriting node lifecycles from scratch. If you are afraid of breaking changes and complex dependency hell, stop reading now.

Responsibilities

  • The Migration: Port our core navigation and control logic from ROS 1 to ROS 2 This involves rewriting nodes to utilise Lifecycle Management and Node Composition for zero-copy transfer.
  • Nav2 Architecture: We don't just install Nav2 You will write custom Behaviour Tree plugins and Costmap layers to handle dynamic obstacles in unstructured environments.
  • Middleware Optimisation: You will own the DDS layer (FastDDS/CycloneDDS). You must tune QoS profiles for lossy WiFi environments and debug discovery traffic issues that traditional network engineers don't understand.
  • Sensor Fusion and State Estimation: Implement and tune EKF/UKF pipelines (robot_localization) to fuse IMU, Wheel Odometry, and LiDAR. You must understand Covariance Matrices. If your covariance grows unbounded, you have failed.
  • Serialisation Strategy: Implement Protocol Buffers (Protobuf) for high-efficiency, non-ROS internal data logging and inter-process communication where overhead must be zero.

Requirements

The Stack (ROS 1 and ROS 2):

  • Deep ROS 2 Mastery: You know the difference between spin(), spin_some(), and Multi-Threaded Executors. You understand why we are moving to ROS 2 (Real-time constraints, DDS security, QoS).
  • Navigation Stack: In-depth knowledge of Nav2 (Planners, Controllers, Recoveries). You understand Global vs. Local planners (A*, DWB, TEB).
  • SLAM and Localisation: Experience with Graph-based SLAM (Cartographer, SLAM Toolbox). You know how to close loops and optimise pose graphs.
  • Control Theory: Implementing real-time safe controllers that handle non-linear dynamics and hardware constraints.

The Math (The Weeder):

  • Linear Algebra and Geometry: Rigid body transformations are your second language. You understand Quaternions, homogeneous transformation matrices ($T in SE(3)$), and how to avoid Gimbal Lock.
  • Kinematics: You can derive forward and Inverse Kinematics for the Differential Drive and Ackermann steering chassis.
  • Probabilistic Robotics: Understanding of Bayesian estimation. You know that sensors are noisy and that Ground Truth is a myth.

The Code

  • C++ (14/17): Real-time safe coding standards. RAII, Smart Pointers, and template metaprogramming.
  • Python: For prototyping and complex orchestration.

This job was posted by Ishan Bhatnagar from Octobotics Tech.

More Info

Job Type:
Industry:
Function:
Employment Type:

About Company

Job ID: 144969155