Auto-apply is a Pro feature

Let Findyet apply to this job for you:

  • Your CV is tailored to this posting.
  • The application form's questions are answered from your profile.
  • You review everything and approve before anything is sent.
  • Findyet submits the application and adds it to your tracker.

Available on Greenhouse postings today, up to 3 applications a day on Pro.

The first 100 verified accounts get Pro free for 90 days.

See plans

Fulfil Solutions

Staff Robotics Software Engineer

Posted Updated
Discussion
  • 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
  • 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
  • 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
  • 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
  • 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

Benefits

  • Medical, dental, and vision coverage, with 401K, life and disability coverage as well
  • Generous paid time off (PTO) - and we mean it!
  • 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
  • Located within commuting distance to Mountain View Ca
  • Strong C and C++ skills; familiarity with embedded Linux, shell scripting, and build systems (Bazel, CMake, etc.)
  • Experience interfacing with electrical engineering teams and hardware bring-up
  • 8+ years of experience in embedded systems firmware development and architecture
  • Experience designing gRPC + Protobuf interfaces between firmware modules and external software
  • Proven ability to lead unit testing strategy and build HIL testing environments
  • Familiarity with Linux-based SBCs (e.g., NXP i.MX, Raspberry Pi, etc.)
  • Experience with motion control, motor tuning, encoder feedback, and trajectory optimization (e.g., jerk limiting)
  • Deep understanding of embedded communication protocols: CAN bus, Modbus, I2C, SPI, UART
  • Skilled with hardware debugging tools (oscilloscope, logic analyzer, multimeter, etc.)
  • 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

Skills

What Staff Software Engineering jobs ask for — and how much of it you have →
Apply

See also

Software Engineering jobs by country — openings, pay and top skills →

Tailor your CV for this role?

We couldn't check your fit for this role — add a CV to your profile to see it next time.