Senior Embedded Software Engineer

GRAM · San Francisco Bay Area, California, United States · $165k–$205k

The role

GRAM is hiring a Senior Embedded Software Engineer to own embedded software across microcontrollers, real-time control, and the Linux robot runtime. The role involves bringing up new electronics, building drivers and communication protocols, and exposing stable interfaces to higher-level autonomy. Success requires versioned software with known behavior on known hardware, remaining observable and recoverable under degraded conditions.

Pay
$165k–$205k
Location
San Francisco Bay Area, California, United States
Work mode
Onsite
Education
Bachelors

What we know that the posting doesn’t say

  • Seen 2 days agostill listed on the employer’s careers page
  • Posted 3 days agothe first time we saw it

About GRAM

GRAM is a self-replication company creating populations of insectoids for the physical economy, focusing on self-preservation as the base case of physical self-replication. Their machines are designed to survive, coordinate, and recover without human intervention.

What you would do

  • Design and implement C and C++ firmware, drivers, and real-time services.
  • Define timing, bandwidth, lifecycle, and fault-response contracts across systems.
  • Bring up new boards and embedded compute using debuggers and analyzers.
  • Build boot, provisioning, update, rollback, and recovery paths.
  • Develop simulation, software-in-the-loop, and hardware-in-the-loop tests.
  • Measure and improve latency, jitter, resource use, and startup time.

Must have

  • Bachelor's degree in CS, CE, EE, or related field or equivalent experience.
  • Shipped C or C++ software on custom electromechanical product using RTOS or embedded Linux.
  • Direct responsibility for hardware bring-up or field failure resolution.
  • Implemented and debugged device drivers, interrupts, DMA, and concurrency.
  • Experience with at least one physical interface like CAN, EtherCAT, Ethernet, SPI, I2C, or UART.
  • Demonstrated real-time systems work with measured latency, jitter, and bandwidth.
  • Experience with behavior under overload or component failure.
  • Closed a hardware-software defect using instrumentation and captured evidence.
  • Added automated test, monitor, or fault response to prevent recurrence.

Nice to have

  • Experience in robotics, autonomous vehicles, aerospace, or industrial controls.
  • Experience with bootloaders, secure boot, or over-the-air updates.
  • Experience with Yocto, kernel or device-tree development.
  • Experience with time synchronization or deterministic networking.
  • Experience with hardware-in-the-loop infrastructure.
  • Experience with safety-related embedded systems.
  • Experience with fleet configuration or production programming and calibration.

What you get

  • Health coverage
  • Generous equity

Experience and education

  • Bachelors degree or equivalent experience

Key skills

  • c
  • c++
  • rtos
  • embedded linux
  • device drivers
  • interrupts
  • dma
  • concurrency
  • memory ownership
  • can
  • ethercat
  • ethernet
  • spi
  • i2c
  • uart
  • debuggers
  • oscilloscopes
  • logic analyzers
  • bus analyzers
  • kernel traces
  • telemetry
  • bootloaders
  • secure boot
  • ota updates

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 la…

Extracted from the employer’s posting. Read it in full on GRAM’s careers page

Apply without filling the form

Approve this role and the application is completed for you, including a résumé tailored to it. You get a confirmation when it lands, and a credit is only spent when a submission is confirmed.

Other roles at GRAM

All 3 roles at GRAM