Staff Robotics Software Engineer

fulfil· Software Engineering
Apply Now ↗
📍 Mountain View, CA

About this role

Fulfil is a well-funded, rapidly growing, and inclusive company that has developed a custom automation robotics system to pick and pack online orders of groceries and other consumables, bringing delight and a value proposition to consumers that doesn’t exist today. Additionally, its unique design and technology is purpose-built to solve today’s environmental problems in the world’s food supply chain. Founded by a team with previous startup success and backed by top-tier VCs, we are committed to reducing waste, improving environmental impact, and reducing emissions with truly new technology.

We can’t do it alone -- we’re seeking curious, capable, passionate team members motivated by the opportunity to create lasting impact on the world through their work. This role offers ample growth opportunities while working side-by-side with an impassioned, multi-disciplinary team spanning mechanical design, software, computer vision, systems integration, and ops to design and operationalize world-changing technology.

Fulfil is committed to creating an inclusive culture, and we celebrate diversity of all kinds.  If this sounds like the kind of environment that you find intriguing, then please apply even if you don’t feel you meet all the requirements listed below.  We'd love to hear from you.

Why you’ll love working at Fulfil

  • Autonomy and ownership; you design it, build it, and own it.
  • Amazing team
  • Build robots that do cool things
  • Rapid growth
  • Inclusive culture
  • Work-life balance
  • Collaborative culture
  • We hire great people and trust them

Key Responsibilities

Technical Leadership

  • 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.
  • Mentor and coach engineers on best practices, code quality, and architectural decisions.

Firmware & Control Development

  • 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).
  • Integrate Linux-based SBC firmware modules with hardware abstraction layers.
  • 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.

Testing & Quality Engineering

  • Design and maintain unit testing and HIL (Hardware-in-the-Loop) environments.
  • Debug systems at all layers — from firmware logic to sensor integration to timing drift.
  • Use oscilloscopes, multimeters, logic analyzers, and related tools to bring up and validate hardware interfaces.

Cross-Disciplinary Collaboration

  • Work with systems, hardware, software, and operations teams to align on firmware behaviors and API contracts.
  • Own interface boundaries between hardware components, middleware, and application layers.
  • Participate in bring-up, debugging, and integration of custom hardware.

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.

Required Qualifications

  • Located within commuting distance to Mountain View Ca
  • 8+ years of experience in embedded systems firmware development and architecture.
  • Deep understanding of embedded communication protocols: CAN bus, Modbus, I2C, SPI, UART.
  • Experience with motion control, motor tuning, encoder feedback, and trajectory optimization (e.g., jerk limiting).
  • Strong C and C++ skills; familiarity with embedded Linux, shell scripting, and build systems (Bazel, CMake, etc.).
  • Experience designing gRPC + Protobuf interfaces between firmware modules and external software.
  • Proven ability to lead unit testing strategy and build HIL testing environments.
  • Experience interfacing with electrical engineering teams and hardware bring-up.
  • Skilled with hardware debugging tools (oscilloscope, logic analyzer, multimeter, etc.).
  • Familiarity with Linux-based SBCs (e.g., NXP i.MX, Raspberry Pi, etc.).

Preferred Qualifications

  • 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.

Why Join Us?

  • A chance to be an early team member and leader of a rapidly growing startup and have an impact on company and technology direction.
  • The ability to solve challenging problems with a skilled, dedicated and friendly multi-disciplinary team.
  • A balanced, highly collaborative work environment.
  • Competitive medical, dental, and vision coverage, with 401K, life and disability coverage.
  • A PTO policy where we encourage and expect all employees to take time to enjoy life outside of work.
  • The salary range for this position is 180,000-$215,000 plus stock and benefits. Pay within the range is based on candidate experience, job-specific skills, education, and work location.

 

Frequently Asked Questions

Is the salary disclosed for the Staff Robotics Software Engineer position at fulfil?
The salary for this Staff Robotics Software Engineer role at fulfil is not publicly listed. Click "Apply Now" to learn more about the compensation package on their official careers page.
Where is the Staff Robotics Software Engineer position at fulfil located?
This Staff Robotics Software Engineer role at fulfil is based in Mountain View, CA. The position is listed as on-site or hybrid. Check the full job description or apply directly to confirm the work arrangement.
Which team or department does the Staff Robotics Software Engineer at fulfil belong to?
This Staff Robotics Software Engineer position is part of the Software Engineering department at fulfil. See the full job description for more information about the team structure and responsibilities.
How do I apply for the Staff Robotics Software Engineer position at fulfil?
Click the "Apply Now" button on this page. You will be redirected to fulfil's official application portal hosted on greenhouse where you can submit your application directly.
When was the Staff Robotics Software Engineer job at fulfil posted?
This Staff Robotics Software Engineer position at fulfil was posted on Mar 26, 2026. Apply as soon as possible — early applications are often reviewed first.
Staff Robotics Software Engineer
fulfil
Apply for this role ↗

You'll be redirected to fulfil's official application page on Greenhouse.