Job description
ABOUT PROJECT
Our client is a global leader in autonomous robotics and AI, operating one of the worldโs largest fleets of commercial mobile robots across retail, transportation, education, and industrial environments. Their next-generation autonomy platform combines computer vision, sensor fusion, indoor navigation, and cloud-connected fleet management to power advanced robotics at scale.
ELEKS is extending the Robot Platform team to enhance and re-architect the Hardware Abstraction Layer (HAL) that enables reliable, safe, and performant robot operation. This role involves deep technical work with sensors, embedded systems, and modern C++ in a highly innovative environment.
REQUIREMENTS
- 6+ years of professional experience with modern C++ (C++11/14/17+)
- Strong background in embedded systems or Hardware Abstraction Layer (HAL) development
- Hands-on experience integrating sensors: LiDAR, IMU, cameras, depth/RGB sensors
- Proficiency with Linux/Ubuntu development environments
- Experience with CMake, unit testing (GTest/GMock), and debugging/profiling tools
- Solid understanding of multithreading, memory management, and real-time constraints
- Experience with version control (Git)
- Familiarity with middleware protocols such as DDS or MQTT
- Ability to work with system-level architecture and contribute to re-design discussions
- Strong troubleshooting skills in embedded/robotics environments
- Good communication skills and ability to work cross-functionally
- High proficiency in English
NICE TO HAVE
- CUDA, Python (for migration tasks), robotics/AMR experience, telemetry system design, large-scale platform migrations
RESPONSIBILITIES
- Migrate the existing HAL to a new, modular, scalable architecture
- Bring up and integrate new hardware sensors (LiDAR/IMU/cameras) into the HAL
- Participate in the re-architecture of HAL for maintainability and extensibility
- Support the migration of middleware components from Python to C++
- Contribute to the redesign of the systemโs telemetry pipeline
- Write clean, efficient, production-ready modern C++ code
- Perform code reviews, unit testing, and debugging to ensure high-quality delivery
- Document architecture, designs, and processes to support team knowledge sharing
- Collaborate closely with hardware, embedded, software, and QA teams for seamless system integration
We may use artificial intelligence (AI) tools to support parts of the hiring process, such as reviewing applications, analyzing resumes, or assessing responses. These tools assist our recruitment team but do not replace human judgment. Final hiring decisions are ultimately made by humans. If you would like more information about how your data is processed, please contact us.








