Embedded Software Engineer
AI Summary
Owns embedded software for hardware platforms, from microcontroller firmware and drivers through Linux runtime, bringing up boards, building deterministic communications and diagnostics, and ensuring observable, recoverable behavior in production.
About this role
The Mission
GRAM is a self-replication company creating machine labor for the physical economy.
Our first research frontier is self-preservation: the base case of physical self-replication. We are building a new class of machines that can survive, coordinate, and recover without humans. We believe scalable machine labor requires more than single-agent task generality or machines shaped in our image.
Our work spans hardware, controls, reinforcement learning, multi-agent coordination, materials science, evaluation, and world models. Join us to solve closure and multi-agent environment generality in industrial domains where demand for labor is effectively unbounded.
It is our mission to make humanity galactic.
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.
Embedded Hardware owns released boards, network physical layers, connectors, and harnesses. Power Electronics owns high-current conversion and drive hardware. Robotics Systems owns subsystem integration. You own firmware, drivers, diagnostics, update behavior, and software behavior on those platforms. Success means versioned 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.
Minimum qualifications
- 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.
Compensation
The base salary range for this position is $160,000–$230,000. Actual compensation will be determined by the scope of ownership, demonstrated technical ability, and relevant experience. This role is also eligible for meaningful early-stage equity.
Working at GRAM
This role is based on-site in El Segundo and is inseparable from physical hardware. You will work at the bench and on the machine with electrical, controls, autonomy, system safety, data, manufacturing, and reliability engineers. Software changes will be evaluated against instrumented behavior, not only code-level tests.
Interview Process
After submitting your application, we review your portfolio and any exceptional work you've shipped. If your application demonstrates the caliber we seek, you'll enter our interview process, which is designed for speed and substance. We aim to complete it within one week from start to finish.
Skills
Explore related jobs
More jobs at GRAM
Field Engineer, Global DeploymentsEl Segundo, California
Robotics Technician (Contract)El Segundo, California
Senior Software Engineer, ControlsSan Francisco Bay Area, California
Senior Software Engineer, Robot Data InfrastructureSan Francisco, California
Senior Robotics Engineer, Data CollectionSan Francisco, California
Staff Robotics Engineer, ManipulationSan Francisco, California
Similar Bootloader jobs
- Software Development Engineer – Routing Platforms & L2 - Routing, C, Linux, Device Drivers, Packet Forwarding, L2/L3 Networking, Bangalore, Exp: 8-12 YrsCisco Systems, Inc. · Bangalore, India
Lead, Platform SoftwareNeros Technologies · Torrance, California
Senior Embedded Linux EngineerGravis Robotics · Zurich
Browse these categories
Market data for software engineer roles
All reports →- Role reportSoftware engineer jobs, Sep 2026: new listings down 9.7%New software engineer listings fell 9.7% to 1,506 this week, the first weekly drop in a month. Prioritize applications while 1,506 fresh roles remain open.
- Salary reportSoftware engineer salary 2026: median midpoint is $190,587The median published range midpoint for US software engineer roles is $190,587, with the middle half from $166,000 to $222,000.
- Market overviewState of tech hiring, September 2026: up 4.8%Tech hiring rose 4.8% month over month in September 2026, with 411,122 new listings. Customer support and account executive roles led the growth.