Job Description
Role:
Bridge the gap between high-level business strategy and technical software execution. This role requires assuming a coaching style role while maintaining full ownership of architecting scalable autonomy and control systems, managing technical debt from prior years of development, and mentoring a growing team of engineers while remaining hands-on with critical code and technical direction decisions.
Responsibilities:
- Architecture & Scaling: Evolve the existing robotics software stack ROS2, C++, Python, from a startup prototype to a robust, production-grade commercial platform.
- Hands-on Development: Write, review, and optimize core software modules, particularly in complex areas like navigation, localization (SLAM), perception, or fleet management.
- Technical Roadmap: Translate product requirements and hardware limitations into structured software milestones and sprint plans.
- Code Quality & Testing: Establish and enforce rigorous CI/CD pipelines, automated hardware-in-the-loop (HIL) testing, and simulation environments to ensure safety and reliability.
- Team Mentorship: Conduct code reviews, and mentor junior and mid-level software engineers
Accountability:
- Software Delivery & Timelines: Ensuring the software team hits critical product release dates and commercial deployment milestones.
- Software System Reliability & Safety: Owning the uptime, edge-case handling, and safety metrics of the robots out in the field.
- Technical Debt Management: Balancing the speed of feature delivery with the long-term stability and cleanliness of the codebase.
- Interdisciplinary Integration: Ensuring seamless software integration with the mechanical, electrical, and hardware systems.
Authority:
- Technical Stack & Tools: Freedom to select software libraries, development tools, cloud infrastructure, and testing frameworks.
- Code Approvals: Ultimate sign-off on code merges, architecture changes, and release readiness (the "gatekeeper" of the master branch).
- Task Allocation: Direct authority to assign sprint tasks, bugs, and feature ownership to software team members.
- Hiring Input: Significant influence over the technical hiring process, including designing coding trials and conducting technical interviews.
QUALIFICATION STANDARDS
Education & Experience:
· Deep technical expertise in robotics software
· Hands-on systems experience
· Proven technical leadership skills
· Bachelor’s degree in Computer Science, Robotics, Electrical Engineering, Mechanical Engineering (with a software focus), or a related STEM field.
· Graduate level specialization in autonomous systems, computer vision, control systems, or artificial intelligence.
· 10+ years of professional software engineering experience.
· Robotics Industry Experience with at least 3+ years working directly on deployed, physical robotic or autonomous systems.
· Documented experience taking a product from an early-stage prototype/lab environment to a commercial production release used by real customers.
· 3+ years of informal or formal technical leadership (e.g., leading sprints, mentoring juniors, scoping architecture, or serving as a Scrum Master)
· Ability to communicate clearly and effectively with co-workers and managers.
· Ability to work a flexible schedule, including weekends and holidays.
Physical Requirements:
· Long hours may sometimes be required.
· Light work – Exerting up to 25 pounds of force occasionally, and/or up to 10 pounds of force frequently or constantly to lift, carry, push, pull, or otherwise move objects.
· Ability to sit or stand for extended periods while working at a computer.
· Occasional use of light hand tools when supporting hardware testing.
· Able to use computer and/or laptops.
Mental Requirements:
· Diverse technical skills and willing to learn new supplemental skill sets
· Able to work effectively in a fast-paced environment with shifting priorities.
· Must be effective at listening to, understanding, clarifying and resolving the concerns and issues raised by co-workers.
· Must be effective in handling problems in the workplace, including anticipating, preventing, identifying and solving problems as necessary.
· Must be able to convey information and ideas clearly to technicians, engineers and managers.
· Ability to learn new software and hardware tool sets
Expected Technical Areas:
· Mastery of C++ (14/17/20) and/or Python, with a strong emphasis on writing highly efficient, memory-safe, and real-time code.
· Proficiency with ROS2, ROS2 packages, and ROS2 adjacent libraries, such as Navigation2 (Nav2), Roboplan, noether, tesseract, and OpenCV.
· Expert knowledge of Linux (Ubuntu) development, multi-threading, concurrency, and real-time operating systems (RTOS).
· Strong foundational knowledge in at least two of the following areas:
o Perception: Computer vision, sensor fusion (LiDAR, cameras, RADAR), 3D point cloud processing.
o Localization & Mapping: SLAM, Kalman filters, state estimation.
o Motion Planning & Controls: Kinematics, trajectory generation, PID/MPC controllers.
· Experience establishing CI/CD pipelines, Docker containerization, and automated testing frameworks (simulation and Hardware-in-the-Loop)
· Software systems design and implementation
· Algorithm design and implementation
Soft Skills & Leadership Competencies:
· Cross-Functional Communication: Ability to translate complex software concepts to mechanical, electrical, and product teams.
· Pragmatic Problem Solving: A "startup mindset" that knows when to write clean, perfect architecture versus when to build a fast, functional patch to unblock a customer deployment.
· Mentorship & Empathy: A proven ability to conduct constructive, growth-oriented code reviews and guide junior engineers through technical roadblocks.
Most job openings for the size of the industry in August: professional and business services; private education and health care, 5 for every 100 jobs. Fewest: construction, 2.9. Compare industries →
View Similar Jobs
Similar jobs which you may be interested in. Typically using your existing skillset.