Senior Embedded Software Engineer

GRAM

San Francisco (CA)

On-site

USD 165,000 - 205,000

Full time

14 days+
Application generator

Stand out for this role — generate a tailored resume and cover letter in about a minute.

Get past ATS filters

Benefits offered by this job

Health coverage
Equity (generous)
Relocation bonus

Job summary

GRAM is seeking an experienced embedded software engineer to own firmware from microcontrollers through the Linux robot runtime. You will bring up new electronics, build drivers, deterministic communications, timing, health monitoring, calibration, logging, and fault response, exposing stable interfaces for autonomy.

Success means versioned embedded software yields known behavior on known hardware, remains observable, recoverable, and testable under degraded conditions.

Qualifications

  • Bachelor's degree in computer science, computer engineering, electrical engineering, or related field, or equivalent practical experience.
  • Shipped C or C++ software on a custom electromechanical product using an RTOS, embedded Linux, or both, including direct responsibility for hardware bring-up or field failure resolution.
  • Implemented and debugged device drivers, interrupts, DMA, concurrency, memory ownership, and at least one physical interface such as CAN, EtherCAT, Ethernet, SPI, I2C, or UART.
  • Demonstrated real-time systems work with measured latency, jitter, bandwidth, CPU or memory use, and behavior under overload or component failure.
  • Closed a hardware-software defect using instrumentation, then added an automated test, monitor, or fault response to prevent recurrence.

Responsibilities

  • Design and implement C and C++ firmware, device drivers, hardware abstraction, real-time services, communication protocols, and robot-runtime components.
  • Define timing, bandwidth, lifecycle, state-machine, calibration, diagnostic, and fault-response contracts across sensors, actuators, power electronics, compute, and autonomy.
  • Bring up new boards and embedded compute using debuggers, oscilloscopes, logic analyzers, bus analyzers, kernel traces, and structured telemetry.
  • Build boot, provisioning, parameter, configuration, software-update, rollback, and recovery paths with explicit failure behavior and version compatibility.
  • Develop simulation, software-in-the-loop, hardware-in-the-loop, fault-injection, and regression tests that run automatically and gate releases.
  • Measure and improve latency, jitter, resource use, startup time, communication reliability, logging completeness, and recovery under load.
  • Investigate integrated-machine failures across firmware, Linux, networking, electronics, controls, and autonomy, then carry corrections through reproducible tests and release evidence.

Skills

C
C++
Firmware
Device drivers
Real-time systems
Embedded Linux
CAN
EtherCAT
Ethernet
SPI
I2C
UART

Education

Bachelor's degree in CS/CE/EE or related field

Tools

Debuggers
Oscilloscopes
Logic analyzers
Bus analyzers
Kernel traces
Telemetry

Job description

The Mission

GRAM is a self replication company creating populations of insectoids for the physical economy.

Our first research frontier is self-preservation: the base case of physical self-replication. Our machines will survive, coordinate, and recover without humans. We believe scalable machine labor requires more than single-agent task generality or machines shaped in our image.

About the role

You will own embedded software from microcontrollers and real-time control support through the Linux robot runtime. You will bring up new electronics; build drivers, deterministic communications, timing, health monitoring, calibration, logging, and fault response; and expose stable interfaces to higher-level autonomy.

Success means versioned embedded software produces known behavior on a known hardware configuration and remains observable, recoverable, and testable through degraded conditions.

What you will do
  • Design and implement C and C++ firmware, device drivers, hardware abstraction, real-time services, communication protocols, and robot-runtime components.
  • Define timing, bandwidth, lifecycle, state-machine, calibration, diagnostic, and fault-response contracts across sensors, actuators, power electronics, compute, and autonomy.
  • Bring up new boards and embedded compute using debuggers, oscilloscopes, logic analyzers, bus analyzers, kernel traces, and structured telemetry.
  • Build boot, provisioning, parameter, configuration, software-update, rollback, and recovery paths with explicit failure behavior and version compatibility.
  • Develop simulation, software-in-the-loop, hardware-in-the-loop, fault-injection, and regression tests that run automatically and gate releases.
  • Measure and improve latency, jitter, resource use, startup time, communication reliability, logging completeness, and recovery under load.
  • Investigate integrated-machine failures across firmware, Linux, networking, electronics, controls, and autonomy, then carry corrections through reproducible tests and release evidence.
  • Bachelor's degree in computer science, computer engineering, electrical engineering, or a related field, or equivalent practical experience.
  • Shipped C or C++ software on a custom electromechanical product using an RTOS, embedded Linux, or both, including direct responsibility for hardware bring-up or field failure resolution.
  • Implemented and debugged device drivers, interrupts, DMA, concurrency, memory ownership, and at least one physical interface such as CAN, EtherCAT, Ethernet, SPI, I2C, or UART.
  • Demonstrated real-time systems work with measured latency, jitter, bandwidth, CPU or memory use, and behavior under overload or component failure.
  • Closed a hardware-software defect using instrumentation and captured evidence, then added an automated test, monitor, or fault response that prevented recurrence.
Preferred experience
  • Robotics, autonomous vehicles, aerospace, industrial controls, or other distributed real-time machines.
  • Bootloaders, secure boot, over-the-air updates, Yocto, kernel or device-tree development, time synchronization, or deterministic networking.
  • Hardware-in-the-loop infrastructure, safety-related embedded systems, fleet configuration, or production programming and calibration.

The annual base salary range for this San Francisco Bay Area position is $165,000-$205,000. Health coverage, benefits, and generous equity come with the role. This role is on-site in the San Francisco Bay Area. A relocation bonus is available. We hire to start as soon as possible. We review what you've shipped; if it's the caliber we seek, interviews take about a week, start to finish. We treat your work and conversations with discretion.

Get your free, confidential resume review.
or drag and drop your file here.
Similar jobs

Similar jobs worth comparing

Senior Embedded Software Engineer
Senior Embedded Software Engineer

Gram Games • San Francisco (CA)

On-site
USD 165,000 - 205,000
Health coverage
Generous equity
Relocation bonus
Senior Electrical Engineer, Embedded Hardware
Senior Electrical Engineer, Embedded Hardware

Gram Games • San Francisco (CA)

On-site
USD 150,000 - 190,000
Health coverage
Generous equity
Relocation bonus
Senior Electrical Engineer, Embedded Hardware
Senior Electrical Engineer, Embedded Hardware

GRAM • San Francisco (CA)

On-site
USD 150,000 - 190,000
Relocation bonus
Health coverage
Equity
+1
Staff Robotics Systems Engineer
Staff Robotics Systems Engineer

GRAM • San Francisco (CA)

On-site
USD 180,000 - 220,000
Relocation bonus
Health coverage
Equity
Staff Robotics Systems Engineer
Staff Robotics Systems Engineer

Gram Games • San Francisco (CA)

On-site
USD 180,000 - 220,000
Health coverage
Generous equity
Relocation bonus
Robotics Technician
Robotics Technician

Gram Games • San Francisco (CA)

On-site
USD 55,000 - 72,000
Health coverage
Relocation bonus
Generous equity
Robotics Technician
Robotics Technician

GRAM • San Francisco (CA)

On-site
USD 55,000 - 72,000
Health coverage
Equity
Relocation bonus
Senior Electrical Engineer, Power Electronics
Senior Electrical Engineer, Power Electronics

Gram Games • San Francisco (CA)

On-site
USD 155,000 - 195,000
Health coverage
Generous equity
Relocation bonus
Staff Controls Engineer, Whole-Body Control
Staff Controls Engineer, Whole-Body Control

Gram Games • San Francisco (CA)

On-site
USD 190,000 - 230,000
Relocation bonus
Health coverage
Equity
Embedded Software Engineer San Francisco, CA · On-site
Embedded Software Engineer San Francisco, CA · On-site

Weave Robotics, Inc. • San Francisco (CA), Northern (KY)

Hybrid
USD 120,000 - 210,000