Senior Embedded Software Engineer, Mobile Robots
San Ramon, CA 94583 | Direct
- Bachelor’s degree in Computer Science or related technical field.
- Five to seven years of experience in professional software development.
- Efficient and portable C code in a real time embedded environment.
- SPI, I2C, RS232, CANOpen, Ethernet
- Robotics or motion control
- Matlab/Simulink or Python
- Linux, POSIX API, GNU tool chain, and source control (git).
- Familiar with compilers, debuggers, IDE and source code control.
- Fluent in software fundamentals including software design, algorithm development, data structures, code modularity and maintainability.
- Good understanding of various aspects of embedded systems (SoC, microcontroller architecture, board block diagrams, board schematics, register maps, etc...)
- Experience developing software used in production in industrial environments.
- Experience with debugging and interacting with electrical and mechanical hardware.
- Design, implement and maintain embedded software for safety and controls of all of our current and future mobile robots
- Design, implement and maintain drivers for embedded peripherals
- Design embedded software for odometry and motion control of new and existing driving configurations for new and custom platforms
- Support existing products and modify existing features
- Participate in product architecture design