Embedded Software Engineer

Socket.dev

San Francisco (CA)

On-site

USD 120,000 - 180,000

Full time

4 days ago
Be an early applicant

Get more replies from employers

Send a job-specific resume in minutes.

Job summary

Socket.dev is seeking an Embedded Software Engineer to build the software closest to our hardware for home robotics. You’ll design and implement firmware, drivers, and real-time services on custom carrier boards, MCUs, and sensors, bridging hardware and software for a reliable robotics stack.

You’ll own embedded concerns from bring-up to production, collaborating with EE and software teams to ensure deterministic timing, robust interfaces, and maintainable code in C/C++, with Python tooling as

Qualifications

  • 3+ years developing embedded software on bare‑metal, RTOS, or Linux platforms.
  • Driver development experience: from datasheet to robust software interface.
  • Hardware-level debugging using schematics, oscilloscopes, and protocol traces.
  • Experience building true real-time systems with deterministic timing.
  • C and modern C++ fluency, with Python for tooling.

Responsibilities

  • Develop production embedded software for robotic systems.
  • Design firmware, device drivers, and sensor/actuator interfaces.
  • Bring up new hardware and validate system functionality.
  • Develop real-time software meeting timing constraints.
  • Own buses and interfaces (SPI/I2C/CAN/SERDES) and debug across layers.

Skills

Embedded software
Driver development
Hardware debugging
Real-time systems
C/C++
Python tooling

Job description

Join Us, and Ship Robots

Weave was founded to build the robots we’d want to have in our own home. We believe the next generation of robotics will transform everyday life by enabling people to do more and to reclaim time to spend on what’s important.


We also believe robots are in a sense like any other product: to matter, they have to ship. Our robots are already operating in real homes and businesses, giving us the opportunity to rapidly improve from real-world experience. With a growing team, strong customer demand, and capital for expansion, we’re entering an exciting stage of growth—and we’re looking for people with exceptional talent and standards to help bring home robotics to millions of households.


The Role

As an Embedded Software Engineer, you'll build the software closest to our hardware, on a compute platform we design ourselves: custom carrier boards, MCUs, and the sensors and actuators around them. MCU firmware, bus protocols, drivers, board bring-up, user-space drivers. When a new board arrives, you're the first person to make it do anything. You'll sit at the seam between electrical engineering and the rest of software, turning new hardware into a reliable platform the rest of the robotics stack can be built on.


Responsibilities


  • Develop production embedded software: Design, implement, test, and maintain embedded software for robotic systems using modern C++. Develop firmware, device drivers, communication stacks (SPI, I2C, RS-485, CAN/CAN FD, Ethernet, or EtherCAT), and interfaces for sensors, actuators, and other embedded peripherals.

  • Bring up new hardware: Collaborate with hardware and electrical engineers to integrate new circuits, and validate system functionality. You’ll need to be able to read and understand component datasheets to build and debug drivers for them.

  • Build real-time systems: Develop deterministic software that meets timing constraints while managing concurrency, resource limitations, and hardware failures.

  • Own the buses: GMSL SerDes links, RS-485, CAN, SPI/I2C. Electrical-to-software debugging with a scope and analyzer when a bug refuses to pick a layer. On the actuator bus you own the compute side; your peer Actuator Firmware engineer owns the other end.

  • Systematize bring-up: First power-on of new boards with the EE team, bring-up checklists that become manufacturing tests, and closing the gap between "works on my bench" and working on mass-produced units.


What You'll Bring


  • 3+ years of experience developing embedded software: bare-metal, RTOS, and/or Linux-based platforms, ideally for robotics or other complex electromechanical systems.

  • Driver development experience: Extensive experience taking a new sensor, actuator, and peripheral from datasheet to a robust software interface, including initialization, configuration, error handling, diagnostics, and recovery.

  • Hardware-level debugging skill: Experience bringing up custom electronics and root-causing issues across hardware, firmware, and drivers using schematics, datasheets, oscilloscopes, logic analyzers, debuggers, and protocol traces.

  • Experience building true real-time systems: you have a deep understanding of techniques to ensure real-time responsiveness and throughput in adversarial scenarios.

  • C and modern C++ fluency, with enough Python for tooling.


Nice to Have


  • Bootloader and secure-boot experience.

  • Production test tooling you built for a factory floor.

  • Time-sensitive sensors: hardware triggering, timestamping, or clock synchronization (PTP) for cameras, IMUs, or encoders.

  • Experience with Rust.

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

Similar jobs worth comparing

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
Systems Software Engineer, Operating Systems
Systems Software Engineer, Operating Systems

Socket.dev • San Francisco (CA)

On-site
USD 180,000 - 250,000
Systems Software Engineer, Operating Systems San Francisco, CA · On-site
Systems Software Engineer, Operating Systems San Francisco, CA · On-site

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

Hybrid
USD 140,000 - 190,000
Senior Embedded Software Engineer
Senior Embedded Software Engineer

Amazon.com Services LLC • North Reading (MA)

On-site
USD 140,000 - 190,000
Robotics Systems Engineer, Generalist
Robotics Systems Engineer, Generalist

Weave Robotics • San Francisco (CA)

On-site
USD 120,000 - 190,000
Principal Robotics Software Engineer
Principal Robotics Software Engineer

Socket.dev • San Francisco (CA)

On-site
USD 180,000 - 260,000
Firmware Engineer – Sensing & Actuation
Firmware Engineer – Sensing & Actuation

Proception Inc. • Palo Alto (CA)

On-site
USD 120,000 - 180,000
Embedded Software Engineer
Embedded Software Engineer

Ulysses • San Francisco (CA)

On-site
USD 120,000 - 180,000
Robotics Software Engineer, Actuator Firmware
Robotics Software Engineer, Actuator Firmware

Socket.dev • San Francisco (CA)

On-site
USD 120,000 - 170,000
Electrical Engineer, Sensing
Electrical Engineer, Sensing

Socket.dev • San Francisco (CA)

On-site
USD 150,000 - 190,000