
Staff Robotics Software Engineer
Fulfil Solutions4 months ago
Base Salary
$180k - $215k/yr
Responsibilities
- Lead architecture and development of embedded firmware systems from concept through production.
- Drive system design across physical communication protocols and high-level RPC interfaces.
- Mentor and coach engineers on code quality, best practices, and architectural decisions.
- Implement portable firmware for ARM-based microcontrollers and single-board computers.
- Develop CAN bus, Modbus, I2C, UART, and SPI protocol implementations.
- Design and maintain gRPC and Protocol Buffer interfaces for hardware services.
- Integrate Linux-based single-board computer firmware with hardware abstraction layers.
- Implement motor control algorithms involving tuning, sequencing, encoder positioning, and jerk limiting.
- Use encoder, sensor, and timing feedback to optimize motion sequences and avoid unnecessary re-homing.
- Design and maintain unit testing and hardware-in-the-loop environments.
- Debug firmware logic, sensor integration, timing drift, and hardware interfaces using lab equipment.
- Own interface boundaries between hardware, middleware, and application layers.
- Collaborate with systems, hardware, software, and operations teams on firmware behavior and API contracts.
- Support hardware bring-up and integration of custom hardware.
- Document firmware APIs, hardware mappings, and integration guides, and promote structured release processes.
Requirements
- Located within commuting distance of Mountain View, California.
- 8+ years of experience in embedded systems firmware development and architecture.
- Deep understanding of CAN bus, Modbus, I2C, SPI, and UART.
- Experience with motion control, motor tuning, encoder feedback, and trajectory optimization such as jerk limiting.
- Strong C and C++ skills, with familiarity with embedded Linux, shell scripting, and build systems such as Bazel and CMake.
- Experience designing gRPC and Protocol Buffer interfaces between firmware modules and external software.
- Experience leading unit testing strategy and building hardware-in-the-loop testing environments.
- Experience working with electrical engineering teams and performing hardware bring-up.
- Skill with oscilloscopes, logic analyzers, multimeters, and related hardware debugging tools.
- Familiarity with Linux-based single-board computers such as NXP i.MX and Raspberry Pi.
- Preferred experience with CANopen, PLCs, ladder logic, industrial automation frameworks, robotics, or distributed systems.
- Preferred experience with firmware bootloaders, OTA update strategies, secure firmware deployment, Ethernet, MQTT, TCP/IP, and firmware artifact management or CI/CD pipelines.
Benefits
- Medical, dental, and vision coverage.
- 401(k), life, and disability coverage.
- Paid time off with an emphasis on work-life balance.
- Stock and other benefits are included.
- Located within commuting distance of Mountain View, California.
- Inclusive, collaborative culture with autonomy, ownership, and growth opportunities.