Live opening · Posted 1 day ago
At a glance
The key details from the original listing.
Your early-applicant advantage
Live timing from JobBeeper.
About the role
Description supplied by the original job listing.
Company Description Cosmoserve Space is dedicated to building a cleaner, more sustainable future for space exploration through active debris removal solutions. The company focuses on high-tech, cost-effective technologies that address the growing challenge of space debris and help safeguard the orbital environment. With a passionate team of specialists and a strong engineering culture, Cosmoserve Space is shaping the next generation of responsible space operations. Team members work on cutting-edge projects that keep space accessible for future missions and long-term exploration. Applicants can expect a mission-driven environment where innovation and accountability guide everyday work.
ABOUT THE ROLE
Cosmoserve Space operates a state-of-the-art robotics laboratory used for proximity operations research — a controlled environment where robotic systems are used to study and replicate close-range manoeuvring scenarios relevant to space missions. As a Robotics Software Engineer, your primary responsibility is to develop, maintain, and evolve the full software stack that powers this facility. You will write production-quality code, build and extend ROS 2 based systems, and ensure the lab’s robotic platforms run reliably and safely. You will work closely with Controls Engineers who own controller design and MBD Engineers who own dynamic modelling, consuming their outputs and integrating them into the larger software architecture.
KEY RESPONSIBILITIES
ROS 2 Software Development
• Design, develop, and maintain large-scale ROS 2 based software systems for the robotics lab facility, including node architecture, launch configurations, topic/service/action interfaces, and lifecycle management.
• Apply knowledge of robot kinematics and dynamics to implement correct coordinate transforms, Jacobian-based velocity mapping, trajectory execution pipelines, and force/torque-aware software interfaces — bridging the gap between mathematical models and running code.
• Write clean, modular, well-documented C++ and Python code adhering to software engineering best practices — unit testing, code review, version control, and CI/CD pipelines.
• Develop and maintain custom ROS 2 packages for robot control, state management, sensor processing, and inter-system communication across the lab’s robotic platforms.
• Design robust software architectures that can evolve as the facility expands — new robots, new sensors, new experiment configurations — without requiring rewrites.
Facility Software Maintenance & Operations
• Own the ongoing maintenance, debugging, and reliability of all software systems running in the robotics lab — ensuring maximum uptime and experiment readiness.
• Triage and resolve software faults across the stack, from low-level hardware drivers and communication protocols to high-level experiment orchestration logic.
• Manage software dependencies, ROS 2 workspace configurations, and system environments across multiple robot platforms in the lab.
• Write and maintain operational runbooks, software documentation, and onboarding guides so the facility can be operated and maintained by the wider team.
• Implement logging, monitoring, and diagnostics tooling to give the team real-time visibility into system health during experiments.
Hardware Integration & Driver Development
• Integrate robotic hardware — manipulators, motion platforms, actuators, and sensors — into the ROS 2 ecosystem, developing or adapting hardware abstraction layers and drivers as needed.
• Interface with industrial robot controllers and motion systems via standard protocols (EtherCAT, CAN bus, Modbus, serial) and expose them as ROS 2 hardware interfaces using ros2_control.
• Integrate sensor payloads (cameras, IMUs, encoders, force/torque sensors) and develop calibration pipelines and data synchronisation across the lab infrastructure.
• Work with MBD Engineers to consume dynamic model outputs and simulation interfaces, integrating them into the software stack for hardware-in-the-loop (HIL) and software-in-the-loop (SIL) test modes.
• Integrate trained RL/ML models produced by the MBD Engineering team into the ROS 2 stack — wrapping learned policies as ROS 2 nodes, managing inference pipelines, and ensuring real-time performance constraints are met.
Experiment Software & Automation
• Develop software frameworks for configuring, launching, recording, and post-processing experiments in the robotics lab — enabling the research team to run repeatable, parameterised test campaigns.
• Build data recording and playback infrastructure using ROS 2 bag files, enabling full experiment replay and post-hoc analysis.
• Implement safety supervision software — workspace monitoring, joint limit enforcement, emergency stop logic — ensuring safe lab operations at all times.
• Collaborate with Controls Engineers to integrate controller outputs into the software stack, providing clean interfaces without owning controller design or tuning.
REQUIRED SKILLSCATEGORY
Programming: C++ (strong proficiency), Python (strong proficiency), CMake, Bash scripting
ROS 2: Node architecture, Launch system, Topics / Services / Actions, Lifecycle nodes, ros2_control, Nav2, MoveIt 2, ROS 2 bag
Software Engineering: Git, CI/CD (GitHub Actions / GitLab CI), Unit & integration testing, Code review, Documentation
Hardware Integration: ros2_control, Hardware abstraction layers, EtherCAT / CAN bus / serial protocols, Driver development
Sensing & Data: Camera / IMU / encoder / F/T sensor integration, Sensor calibration, ROS 2 bag recording & playback
System & DevOps: Linux / Ubuntu, Docker, Systemd services, Networking (TCP/IP, DDS / FastDDS), Multi-machine ROS 2 setups
Simulation: Gazebo / Ignition, RViz 2, URDF / XACRO — for software-in-the-loop testing and model validation
Robotics Fundamentals: Solid understanding of robot kinematics (FK/IK, Jacobians, DH parameters) and dynamics (equations of motion, torque/force relationships) — applied to writing correct software for trajectory execution, coordinate transforms, and hardware interfacing
NICE TO HAVE
• Experience with real-time Linux (PREEMPT-RT) or real-time middleware (Orocos, micro-ROS) for low-latency control interfaces.
• Familiarity with NVIDIA Isaac ROS or GPU-accelerated perception pipelines for robot vision.
• Experience with robot operating facility or lab management software — experiment orchestration, scheduling, and remote monitoring.
• Background in software architecture for multi-robot systems or distributed ROS 2 deployments.
• Knowledge of DDS middleware configuration (FastDDS, CycloneDDS) for reliable multi-machine communication.
• Experience with web-based robot monitoring dashboards (e.g., Foxglove Studio, custom WebSocket / REST interfaces).
• Familiarity with space proximity operations, relative motion dynamics, or orbital mechanics at a conceptual level.
• Prior experience maintaining a shared research facility or lab software infrastructure.
QUALIFICATIONS
• B.Tech / M.Tech in Computer Science, Electrical Engineering, Robotics, or a closely related field.
• 2–3 years of hands-on experience developing production-quality software for robotic systems.
• Strong proficiency in C++ and Python with demonstrated experience architecting and maintaining large, complex codebases — multi-package ROS 2 workspaces, shared libraries, and long-lived production systems rather than one-off scripts or prototypes.
• Solid ROS 2 experience: building multi-package workspaces, writing custom nodes, configuring launch files, and integrating hardware via ros2_control.
• Sound understanding of robot kinematics and dynamics — forward/inverse kinematics, Jacobians, equations of motion — applied to writing software that correctly implements trajectory execution, coordinate transforms, and hardware interfaces.
• Experience integrating real robot hardware into a ROS 2 stack, including driver development or adaptation.
• Comfortable owning a complex software system end-to-end
Work arrangement
No
More openings worth a look
Recently tracked roles with full details and direct application links.