The Role
Design and implement ROS 2 software on embedded and edge platforms, including lifecycle management, node orchestration, monitoring, fault recovery, state machines, and robot behaviors. Define command-response interfaces and contribute to systems engineering documentation, safety analysis, and requirements. Provide technical leadership through architecture decisions, code and design reviews, and cross-functional coordination across robotics projects.
Summary Generated by Built In
Design and implement ROS 2-based software systems on embedded/edge platforms, from architecture through working, tested code.
Own node lifecycle and orchestration - launching, monitoring, health-checking, recovering, and shutting down ROS 2 nodes in a managed, deterministic way.
Build and validate system-level state machines governing operating modes, fault escalation, safe-state entry/exit, and recovery sequencing.
Implement fault detection mechanisms (timeouts, health watchdogs, data-freshness checks, diagnostics aggregation) with detection logic kept cleanly separated from protective/recovery actions.
Build application-layer robot behaviour on top of shared infrastructure, so new modes or capabilities extend the system without reworking it.
Define and maintain command-response interfaces between a controlling UI/operator layer and the robot's software stack.
Work within a formal systems engineering process — contributing to and building from requirements, architecture, interface design, and risk/safety analysis documentation.
Adapt to and take ownership of different robotics projects and subsystems as priorities shift.
Provide technical leadership on assigned projects - guiding architectural decisions, reviewing code and design proposals, and coordinating cross-functionally with systems and hardware teams.
Requirements
Excellent communication skills
Ability to work effectively with cross functional departments.
Good record keeping skills.
Produce accurate documentation.
Able to organize and prioritise own work schedule to meet deadlines and work under pressure.
Leads multiple projects.
Strong C++ experience in a ROS 2 context (Humble or later), including managed/lifecycle nodes.
Demonstrated experience designing or implementing node monitoring/recovery systems — not just application-level ROS 2 nodes.
Comfort with state-machine-based system design and precondition-driven mode/state transitions.
Experience deploying and debugging on embedded/edge compute platforms (Jetson family or comparable).
Skills Required
- Excellent communication skills
- Ability to work effectively with cross-functional departments
- Good record-keeping skills
- Ability to produce accurate documentation
- Ability to organize and prioritize work to meet deadlines and work under pressure
- Ability to lead multiple projects
- Strong C++ experience in a ROS 2 context, using Humble or later
- Experience with managed or lifecycle ROS 2 nodes
- Experience designing or implementing node monitoring and recovery systems
- Experience with state-machine-based system design and precondition-driven state transitions
- Experience deploying and debugging on embedded or edge computing platforms, such as the Jetson family
Am I A Good Fit?
Get Personalized Job Insights.
Our AI-powered fit analysis compares your resume with a job listing so you know if your skills & experience align.
Success! Refresh the page to see how your skills align with this role.
The Company
What We Do
Roots Group of Companies is an India-based diversified manufacturing group established in 1970. Its businesses span automotive components, industrial cleaning equipment, precision equipment, cast components, electronics manufacturing services, and metrology. The group supplies products and solutions to automotive brands and industrial, institutional, and commercial customers, while expanding its presence through manufacturing facilities and offices in India and international markets.







