Senior Robotics Software Engineer (C++ / ROS2 / Motion Planning)
Volley Automation · Denver, CO · 3 wk ago
On-siteEngineeringFull-time
Responsibilities
- Develop and maintain software for Volley’s automated parking platform and robotic vehicle fleet.
- Design, implement, and optimize multi-agent planning and coordination algorithms for real-world robotic operations.
- Develop robust, scalable, and fault-tolerant software capable of managing tens of robots and thousands of parking spaces.
- Evaluate algorithm performance through large-scale simulation and cloud-based testing infrastructure.
- Support integration, testing, debugging, pilot deployments, and operational validation in live installations.
- Collaborate with electrical, mechanical, networking, and software teams on architecture and infrastructure decisions.
- Design deterministic and reliable software systems operating under real-time and resource-constrained environments.
- Define interfaces, communication mechanisms, and system architecture across embedded, robotics, and application-layer software.
- Participate actively in technical planning, design reviews, backlog grooming, and development execution.
- Collaborate with customers and internal stakeholders to generalize planning and automation solutions across diverse deployment scenarios.
- Leverage modern AI-assisted development tools and techniques to improve engineering productivity and software quality.
Requirements
- BS in Computer Science, Robotics, Electrical Engineering, Mechanical Engineering, or a related technical discipline.
- Strong professional experience developing software in modern C++.
- Experience developing software on Linux-based systems.
- Experience with ROS2 and robotics software architectures.
- Knowledge of path planning and search algorithms such as A*, Dijkstra, or related techniques.
- Understanding of multi-agent planning, task allocation, MAPF (Multi-Agent Path Finding), MAPD, CBS, or related coordination problems.
- Experience designing deterministic software for systems with real-time requirements and constrained compute resources.
- Strong understanding of software architecture, concurrency, algorithmic complexity, and system performance.
- Experience with Git, Docker, and modern software development practices.
- Familiarity with Ethernet-based communication protocols, IPC mechanisms, and distributed systems.
- Strong communication skills, including requirements gathering, technical documentation, and cross-functional collaboration.
- Demonstrated ability to own features from design through deployment and operational support.
- Experience using AI-powered development tools to improve engineering effectiveness.
Preferred Qualifications
- Hands-on experience deploying and supporting robotic systems in production environments.
- MS or PhD in Computer Science, Robotics, Electrical Engineering, Mechanical Engineering, or a related field.
- Deep expertise in Multi-Agent Path Finding (MAPF) algorithms, including Conflict-Based Search (CBS) and related approaches.
- Experience with simulation and robotics visualization tools such as RViz, Foxglove, Gazebo, or equivalent.
- Experience with safety-critical systems and reliability engineering.
- Experience with real-time operating systems (RTOS).
- Experience with industrial and embedded communication protocols such as RS232, RS422, I2C, SPI, and JTAG.
- Experience with Hardware-in-the-Loop (HIL) testing and automated validation frameworks.
- Experience working with lidar, vision systems, environmental sensing, or other robotics sensors.