Embedded Software Engineer (C/C++, microcontrollers)
Core
Design, develop, test, and sustain embedded software for autonomous robotic retail store platforms and subsystems.
Role type
Embedded Software Engineer (C/C++, microcontrollers)
Builds
Firmware for microcontroller-based systems responsible for motion, sensing, delivery, and subsystem coordination for autonomous retail robots.
Domain
Robotics + Embedded Systems
Deliverable
production ML models | product features | infrastructure
Required skills
C/C++ programming, microcontroller development (STM32, ESP32, ARM Cortex-M), embedded protocols (UART, SPI, I2C, CAN, USB, Ethernet), hardware-software integration, debugging with oscilloscopes/logic analyzers, board bring-up, real-world failure mode analysis.
Preferred skills
Python for tooling and automation, Linux support, electromechanical assembly implementation.
Technologies
ARM, Ethernet, Firmware, Hardware, Python, Robotics, C++, Linux
Responsibilities
Design and develop embedded software for robotics platforms; troubleshoot hardware-software integration challenges; collaborate with cross-functional teams to transition subsystems to production; enhance system reliability and fault recovery; build internal validation and diagnostic tools; participate in design reviews and engineering standards.
Seniority
Mid-level, hands-on IC