Roboforce Robotics Software Engineer at RoboForce developing production-grade robotics software for real-world deployment. Focus on software development, system integration, robustness, debugging, and tooling.
Responsibilities
Robotics Software Development: Design, implement, and maintain production software for real-world robotic systems using C++ and Python, with a focus on performance, reliability, and maintainability.
System Integration: Integrate and refine robotics capabilities across perception, planning, controls, teleoperation, and platform software to ensure robust behavior on physical robots.
Robustness & Reliability Engineering: Improve software quality through testing, validation, fault handling, performance tuning, and edge-case analysis to make systems dependable in unstructured outdoor environments.
Debugging & Root Cause Analysis: Investigate complex failures across software, sensors, networking, timing, and hardware interfaces, and drive issues to resolution through disciplined technical analysis.
Tooling & Infrastructure: Build internal tools, scripts, and workflows that improve developer velocity, testing efficiency, observability, and release quality across the robotics software stack.
On-Robot Validation: Work directly with hardware to validate new features, evaluate system behavior, and iterate quickly between development and real-world testing.
Education: B.S. or M.S. in Robotics, Computer Science, Electrical Engineering, or equivalent practical experience.
Experience: 2+ years of professional experience in robotics, autonomous vehicles, drones, or complex embedded systems, with a demonstrated track record of deploying physical hardware products into the field.
Programming Proficiency: Strong command of both C++ and Python, with the ability to read, debug, and write production-level C++ for core robot systems, alongside robust Python tooling.
Robotics Software Fundamentals: Experience working with one or more core robotics domains such as perception, motion planning, controls, localization, state estimation, system integration, or robot behavior.
Linux Systems Expertise: Strong comfort working in Linux development environments, including command-line tools, debugging workflows, scripting, and system-level troubleshooting.
Debugging Mindset: Proven ability to diagnose and resolve problems that span software, hardware, sensors, and distributed system interactions.
Collaboration: Requires 5 days/week in-office collaboration with the team.
Bonus Qualifications
Outdoor Robotics Experience: Background in autonomous driving, drones, mobile robotics, or other systems deployed in outdoor or unstructured environments.
Infrastructure Familiarity: Experience with Docker, Kubernetes, CI/CD systems, or software release workflows for robotics platforms.
Developer Tooling: Experience building tools for testing, simulation, telemetry, debugging, or log analysis.
Visualization & Diagnostics: Experience with robotics visualization and diagnostics tools such as Foxglove, Grafana, RViz, or custom internal interfaces.