With a career at The Home Depot, you can be yourself and also be part of something bigger.
Position Summary
The Embedded Software Engineer is responsible for designing, developing, testing, and supporting embedded software that powers autonomous mobile robots (AMRs) operating in warehouse and industrial environments. This role focuses on implementing reliable, high-performance software for robot control, sensing, communications, diagnostics, and hardware integration.
Working as part of a cross-functional robotics engineering team, the Embedded Software Engineer collaborates closely with Robotics, Controls, Electrical, Mechanical, Platform Software, QA, and Product teams to deliver production-ready robotic systems. The ideal candidate is passionate about embedded development, enjoys solving complex hardware/software integration challenges, and thrives in fast-paced environments where software directly impacts physical systems.
Key Responsibilities
Embedded Software Development
- Design, develop, and maintain embedded software running on robotic platforms.
- Robot motion control
- Sensor integration
- Power management
- Communications
- Diagnostics and telemetry
- Safety monitoring systems
- Develop maintainable, scalable, and well-tested software using modern engineering practices.
- Optimize software performance for real-time and resource-constrained environments.
- Participate in software architecture discussions and technical design reviews.
Mobile Robotics Systems
- Develop software supporting autonomous robot operation in warehouse and industrial environments.
- LiDAR systems
- Cameras
- IMUs
- Motor controllers
- Battery management systems
- Safety sensors
- Wireless communication systems (4G/Wi-Fi/Bluetooth)
- OTA update mechanisms
- Collaborate with Robotics and Controls engineers on navigation and autonomy features.
- Support deployment and operation of robotic fleets in production environments.
- Troubleshoot issues observed during field deployments and operational testing.
Hardware Integration
- Collaborate with Electrical and Mechanical Engineering teams during hardware development.
- Develop drivers and interfaces for sensors, actuators, and custom hardware.
- Participate in board bring-up and hardware validation activities.
- Diagnose and resolve hardware/software integration issues.
- Support prototype development through production release.
Reliability & Diagnostics
- Develop software that operates reliably under real-time constraints.
- Implement monitoring, fault detection, and recovery mechanisms.
- Support root cause analysis of software and hardware failures.