Software Engineer, Robotics

South San Francisco
Product Development – Robot Team /
Full-time /
In this role, you will be working with our robot software engineering team on the code that drives our Tally(TM) autonomous robots. You will work on all aspects of the Tally stack including but not limited to navigation, perception, autonomous behaviors, hardware drivers, cloud integration, and infrastructure management. Your primary objective will be to build, maintain, and evolve the Tally software stack to make our robots better, faster, smarter, easier, and bulletproof to failure.


    • Maintaining and extending the Tally software stack
    • Improving Tally's autonomy, navigation, perception, and human-robot interaction (HRI) behaviors.
    • Testing and integrating new hardware components including new sensors that will go into the next generation of Tally.
    • Assist in finishing our migration from ROS1 to ROS2
    • Evaluating third-party ROS packages for integration into our stack

Required Qualifications

    • BS, MS, or PhD in Computer Science or related field highly recommended but not required
    • Extremely adept in both C++ and Python programming
    • Proficient in shell scripting, preferably with Bash and Python
    • Well-versed in source control systems, particularly Git
    • Experience working with Ubuntu or other Debian-based Linux distributions
    • Familiarity with modern software development methodologies (e.g. continuous integration/deployment, scrum, automated regression testing)
    • Good understanding of the Robot Operating System (ROS) and core concepts such as nodes, messages, topics, services, parameters, build system, etc.
    • Experience writing ROS nodes is a must.
    • Understanding of both ROS1 and ROS2 is recommended but only one is required.
    • Familiarity with Docker containers recommended
    • Experience with Nvidia Jetson platform is a huge bonus but not required
    • Experience with cloud computing platforms (GCP, AWS, Azure, etc) recommended but not required
    • Experience managing large numbers of connected IoT devices (e.g. robots, wearables, phones, smart home) is a huge bonus but not required.
$100,000 - $200,000 a year
Salary dependent on experience and location.