Senior Software Engineer, Robotics Systems
About The Position
- Provide technical leadership and collaborate across disciplines (Hardware, Algorithms, Product) to assist in defining system capabilities and ensuring that our software abstractions reflect our system capabilities in a robust and scalable manner
- Keep up to date on the latest hardware and sensing technologies to identify opportunities to improve fleet performance and cost
- Lead software design and integration of sensors and motor drivers
- Perform root cause analysis of escalated issues in hardware / software integration
- Provide technical guidance to other members of the team by providing clear architecture definitions and designs in addition to providing feedback in code reviews.
Requirements
- Demonstrated experience in software development for complex systems interacting with sensors inputs and control-loops.
- Proven system integration and software architecture skills.
- Good knowledge of hardware interfaces, such as RS232, I2C, CAN and EtherCAT, work with their respective software stacks
- Understanding of modern sensing technologies such as LiDAR, ToF Cameras, and 3D Cameras.
- Strong coding skills Python and C++ in the Linux environment.
- Experience designing and developing robotic systems using a robotic middleware (such as ROS), and existing libraries and tools.
- BS or MS with 5+ year's experience.
- 1+ year's experience in technical leadership role.