Robotics Software Engineer
- 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
- BS, MS, or PhD in Computer Science or related field highly recommended but not required
- Extremely adept in 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.