Robotic Software Engineer - Manipulation
Description

  

We are seeking a Senior Robotics Engineer to design, implement, and deploy manipulation algorithms for arms mounted on top of dynamic legged robotic systems in complex real-world environments. You will develop task and motion planning, grasping, perception and control pipelines, using real-time software and ensuring high-level performance on hardware. This role is ideal for engineers who thrive on high-velocity problem solving, deep technical ownership, and hands-on testing and validation.


  

Responsibilities

· Architect Manipulation Pipelines: Work on the design and implementation of end-to-end manipulation frameworks, from high-level task planning down to perception and low-level joint control.

· Motion Planning & Optimization: Develop algorithms for trajectory planning and obstacle avoidance, as well as motion generation in a real-time setting.

· Development of Grasping Algorithms: Implement grasping strategies using a variety of sensors (proprioception, vision) to handle rigid or deformable objects.

· Sim-to-Real Transfer: Utilize physics-based simulators to develop and validate manipulation policies, ensuring high-fidelity transfer to physical hardware.

· Software Development and Testing: Write clean and maintainable code in C++ and Python. Also debug and analyze system performance in both simulation and hardware using logs, visualization tools, hardware experiments, and fleet data.

· System Integration: Collaborate closely with mechanical, perception, embedded, and systems teams to ensure end-to-end performance and robustness.

· Mentorship: Mentor junior engineers and contribute to long-term architectural decisions.

Requirements

  

Required Qualifications

· Master’s or PhD in Robotics, Mechanical Engineering, Electrical Engineering, Aerospace Engineering, Computer Science, or a related field.

· 3+ years of hands-on experience in robotic manipulation, specifically with multi-DOF (Degree of Freedom) arms.

· Strong foundations in motion planning, control theory and optimization, along with experience in dynamical systems.

· Deep understanding of coordinate transformations, forward/inverse kinematics, Jacobians, and robot dynamics.

· Experience with motion planning software tools (e.g., MoveIt, OMPL, or custom optimization-based planners).

· Experience with multi-body dynamics, modeling, and simulation (e.g., MuJoCo, Gazebo, Isaac, Bullet/PyBullet).

· Experience with ROS 2 and real-time middleware.

· Proficiency in modern C++ (C++17/20) and Python for development and tooling.

· Experience with Unix/Linux environments and software engineering best practices (version control, CI/CD).

Preferred Qualifications

· Experience with legged or humanoid robots.

· Experience applying Reinforcement Learning (RL), Vision Language Models (VLMs) or Vision-Language-Action Models (VLAs) for robotic decision-making and task planning.

· Familiarity with 3D perception, point cloud processing, and integrating vision-based feedback into manipulation loops.

· Background in whole-body control frameworks (operational space control, MPC, etc.).

· Experience with force-feedback control or “hand-eye” calibration techniques.

· Publications or significant open-source contributions in robotics or machine learning.

· Demonstrated ability to lead technical efforts and mentor junior engineers.