Logo
Fulfil

Staff / Principal Firmware Engineer

Fulfil, Mountain View, California, us, 94039

Save Job

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. We are seeking a curious, capable, and passionate

Staff / Principal Firmware Engineer

to join our team. 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. Key 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. 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. 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

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.). Preferred Qualifications

Experience with CanOpen protocol. Familiarity with PLCs, ladder logic, or industrial automation frameworks. Background in industrial automation, robotics, or distributed systems. 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.

#J-18808-Ljbffr