United Robots is a technology company developing autonomous mobile robots for industrial facilities, warehouses, and logistics centres. We create complete solutions encompassing electronics, control systems, autonomous navigation, sensor integration, robot software, and a cloud platform for managing fleets of devices.
We are looking for a versatile Robotics Software Engineer who will participate in designing, developing, integrating, and testing software for autonomous mobile robots. We need someone who can view a robot as a complete system and move confidently between software, sensors, electronics, and the device’s real-world behaviour.
Responsibilities
-
Developing software for autonomous mobile robots;
-
Designing, implementing, and maintaining components operating in ROS and ROS 2 environments;
-
Developing software in C++ and Python;
-
Integrating sensors, actuators, motor controllers, onboard computers, and other robot components;
-
Developing communication modules and interfaces between individual subsystems;
-
Implementing and integrating algorithms for localisation, navigation, motion planning, and mission execution;
-
Integrating data from LiDARs, cameras, ToF sensors, encoders, IMUs, and other sensors;
-
Developing control logic for the robot’s working and actuating components;
-
Implementing status reporting, diagnostics, telemetry, and data-logging mechanisms;
-
Diagnosing problems encountered during testing, deployment, and robot operation at customer sites;
-
Analysing logs and data recorded during real-world device operation;
-
Creating unit, integration, and system tests;
-
Participating in simulation tests and tests conducted on physical robots;
-
Optimising software performance, stability, and reliability;
-
Collaborating with teams responsible for mechanics, electronics, embedded systems, backend services, and the cloud platform;
-
Preparing technical documentation and instructions for developed components;
-
Participating in code reviews and ensuring compliance with software development standards;
-
Supporting robot commissioning, acceptance testing, and deployment at customer locations.
Key objectives of the role
-
Developing stable and scalable software for autonomous robots;
-
Increasing the reliability of robots operating in real industrial environments;
-
Developing a modular architecture that enables common components to be used across different robot types;
-
Reducing the time required to integrate new sensors, devices, and functionalities;
-
Improving issue diagnosis and analysis of robot behaviour;
-
Ensuring seamless cooperation between robot software, embedded systems, and the cloud platform;
-
Contributing to the migration and development of ROS 2-based solutions;
-
Preparing software for deployment across a growing robot fleet.
Requirements
-
A minimum of 2 years of relevant professional experience;
-
Experience developing software for robots, autonomous systems, embedded devices, or real-time systems;
-
Practical knowledge of ROS or ROS 2;
-
Good knowledge of C++ and/or Python;
-
Very good knowledge of Linux;
-
Knowledge of Git and collaborative software development practices;
-
Ability to design and develop modular software;
-
Knowledge of inter-process communication and distributed system architectures;
-
Experience integrating hardware and software;
-
Ability to diagnose issues using logs, telemetry, and observed device behaviour;
-
Basic knowledge of communication protocols used in robotics, such as CAN, Ethernet, TCP/IP, UART, RS-232, or RS-485;
-
Understanding of the operating principles of sensors used in robotics;
-
Ability to solve technical problems independently;
-
Willingness to test software on physical robots;
-
Ability to collaborate with multidisciplinary teams;
-
English proficiency sufficient to work confidently with technical documentation and communicate effectively in day-to-day work.
Nice to have
-
Knowledge of SLAM, localisation, navigation, and trajectory-planning algorithms;
-
Experience with Nav2, MoveIt, Gazebo, Isaac Sim, or similar solutions;
-
Knowledge of autonomous mobile robot systems, including AMRs and AGVs;
-
Experience integrating LiDARs, RGB/RGB-D cameras, ToF sensors, IMUs, and encoders;
-
Knowledge of sensor fusion;
-
Experience with computer vision systems and OpenCV;
-
Knowledge of object detection and classification algorithms;
-
Experience with Docker and software containerisation;
-
Knowledge of CI/CD and automated testing processes;
-
Experience with NVIDIA Jetson, industrial computers, or other edge-computing platforms;
-
Knowledge of motor controllers, drive systems, and automation fundamentals;
-
Experience with PLCs or Modbus communication;
-
Knowledge of Hardware-in-the-Loop and Software-in-the-Loop methods;
-
Experience with field-deployed devices operating partially offline or without continuous operator supervision;
-
Knowledge of robotic system safety.
What we offer
-
A genuine influence on the architecture and development of autonomous robot software;
-
The opportunity to work on a complete product, from low-level hardware communication to autonomy and cloud integration;
-
Participation in developing robots that operate in real industrial and logistics facilities;
-
Access to robots, sensors, electronics, and a dedicated testing environment;
-
The opportunity to develop expertise in ROS 2, autonomous navigation, sensor fusion, and robot fleet management;
-
A high degree of independence and direct cooperation with the technical team and company management;
-
The opportunity to participate in designing new products and future generations of robots;
-
Compensation aligned with your experience and level of responsibility.