Job Openings Robotics Software Engineer

About the job Robotics Software Engineer

Job Description:
As a Robotics Software Engineer, you'll play a key role in developing intelligent algorithms that power our next-generation robotic systems. You'll work on motion planning, SLAM, object tracking, and state estimation while leveraging your expertise in C++, ROS/ROS2, and computer vision to create breakthrough innovations.

What You'll Do:

  • Design, develop, and maintain robotics software using Python and C++ with a focus on object-oriented programming.
  • Design and implement advanced algorithms for robot localization, mapping, and state estimation.
  • Implement and optimize SLAM algorithms (Cartographer, Gmapping, Hector SLAM, etc.) for real-time localization and mapping.
  • Work with AMCL (Adaptive Monte Carlo Localization) and other localization techniques to enhance navigation accuracy.
  • Develop and integrate image processing and point cloud algorithms (ICP, OpenCV, PCL) for environment perception and object tracking.
  • Design and implement path planning, coverage path planning, and motion planning algorithms for mobile robots.
  • Build, test, and simulate robotics applications in ROS2 and Gazebo.
  • Utilize Dbus and other middleware for inter-process communication and seamless system integration.
  • Apply machine learning techniques and libraries (e.g., OpenCV, Boost) to improve robotic perception and AI-driven capabilities.
  • Optimize software for performance, efficiency, and scalability in real-world robotics applications.
  • Collaborate with cross-functional R&D teams to integrate robotics software into hardware platforms.
  • Work in a Linux development environment, leveraging tools such as Git and Gerrit for version control and code reviews.
  • Conduct testing, debugging, and performance tuning of robotics systems.
  • Stay updated with emerging robotics technologies and actively contribute to continuous innovation.

What You Bring:

  • Bachelor's/Master's/Ph.D. in Robotics, Computer Engineering, Electronics, Mechatronics, or a related field
  • 5+ years of experience in robotics software development or academic research
  • Strong programming skills in Python and C++, OOP, and cross-compilation techniques.
  • Hands-on experience with ROS/ROS2, OpenCV, and exteroceptive sense-based control solutions
  • In-depth knowledge of SLAM, AMCL, and motion planning algorithms.
  • Proficiency in image processing (OpenCV, PCL, point cloud processing, ICP).
  • Experience with simulation tools (Gazebo or similar).
  • Familiarity with Dbus or similar communication protocols.
  • Strong problem-solving and debugging skills.
  • Ability to work independently and in a collaborative R&D environment.