Fulfil

Fulfil

Staff Robotics Software Engineer

Mountain View, CA · Staff+

Sponsorship not specified$180k-$215kDetected 8 days ago
C++BashAlgorithmsCI/CDLinuxDevOpsgRPCComputer VisionRecruitingEmbedded SystemsRoboticsPLCMechanical DesignElectrical EngineeringSensorsTCP/IPLeadershipCommunicationCollaboration

About the role

  • Fulfil is committed to creating an inclusive culture, and we celebrate diversity of all kinds.
  • Documentation & Lifecycle Management - Ensure detailed documentation of firmware APIs, hardware mappings, and integration guides. - Promote best practices for version control, CI/CD for firmware, and structured release processes.
  • Pay within the range is based on candidate experience, job-specific skills, education, and work location.

Responsibilities

  • Lead architecture and development of embedded firmware systems from concept through production.
  • Drive system design across multiple communication layers: from physical protocols (CAN, I2C) to high-level RPC interfaces.
  • Implement robust, portable firmware using C/C++ for ARM-based microcontrollers and SBCs (e.g., STM32, NXP, Raspberry Pi-class devices).
  • Develop and maintain protocol implementations for CAN bus, Modbus, I2C, UART, and SPI.
  • Design and maintain gRPC and Protocol Buffer interfaces to expose hardware services cleanly and safely to higher-level systems (e.g., orchestration, cloud, or local UIs).
  • Implement motor control algorithms, including tuning, sequencing, encoder-based positioning, and jerk limiting.
  • Use real-world feedback (encoders, sensors, timing feedback) to optimize motion sequences and avoid unnecessary re-homing.
  • Design and maintain unit testing and HIL (Hardware-in-the-Loop) environments.
  • Use oscilloscopes, multimeters, logic analyzers, and related tools to bring up and validate hardware interfaces.
  • Own interface boundaries between hardware components, middleware, and application layers.

Requirements

  • 8+ years of experience in embedded systems firmware development and architecture.
  • Experience with motion control, motor tuning, encoder feedback, and trajectory optimization (e.g., jerk limiting).
  • Experience designing gRPC + Protobuf interfaces between firmware modules and external software.
  • Experience interfacing with electrical engineering teams and hardware bring-up.
  • Familiarity with Linux-based SBCs (e.g., NXP i.MX, Raspberry Pi, etc.).

Nice to have

  • Experience with CanOpen protocol.
  • Familiarity with PLCs, ladder logic, or industrial automation frameworks.
  • Background in industrial automation, robotics, or distributed systems.
  • Experience with firmware bootloaders, OTA update strategies, and secure firmware deployment.
  • Understanding of network protocols (Ethernet, MQTT, TCP/IP) in embedded contexts.
  • Exposure to DevOps practices for firmware (artifact management, CI/CD pipelines).
  • A maker/tinkerer mindset - whether from robotics competitions, hobby projects, or hardware hacking.
  • A chance to be an early team member and leader of a rapidly growing startup and have an impact on company and technology direction.

Compensation

  • The salary range for this position is 180,000-$215,000 plus stock and benefits.

This listing is sourced directly from Fulfil's careers page and normalized into a canonical job model.