Role details
Job description
Make it rain. Make Snow. Make Earth Habitable.
Rainmaker builds and deploys audacious technologies that work with nature to create an abundant, habitable planet. We are modernizing proven cloud-seeding science with weather-resistant UAS, radar and satellite observations, numerical weather prediction, novel sensing and validation systems, and sustainable seeding technologies. We are building an integrated system to make more freshwater available to farms, ecosystems, and communities.
Our ambition is bold, but we pursue it with humility. We take on difficult problems in the real world with technical rigor, grit, integrity, and an openness to learning and course-correcting. We are hiring individuals with evidence of exceptional ability. If you want to build systems that endure, restore, and deliver the future we were promised, we want to hear from you.
The vehicle software team builds the software that operates Rainmaker’s cloud-seeding vehicles, connecting flight control, onboard computing, sensors, payloads, and ground operations. We work closely with electrical, mechanical, manufacturing, and flight operations teams to turn new hardware into reliable systems that can be built, deployed, and operated at scale. Our goal is to make every vehicle a dependable tool for delivering more freshwater where it is needed.About the Role
What You'll Do
-
Own the architecture, implementation, and maintenance of all embedded firmware across the vehicle, including flight-controller firmware, power distribution, sensors, and seeding payloads.
-
Set firmware priorities, identify reliability risks and technical gaps, and drive projects from an ambiguous problem to a validated release.
-
Bring up new boards with electrical engineers: read schematics, validate interfaces, write drivers, and debug failures at the boundary between hardware and software.
-
Develop dependable device communication and command handling over CAN, UART, SPI, and I2C, with clear contracts for telemetry, timing, and fault behavior.
-
Integrate firmware with our vehicle software so commands, device state, and telemetry behave consistently from the microcontroller to the operator.
-
Design and validate safe startup states, watchdogs, interlocks, and recovery behavior for resets, communication loss, sensor faults, and interrupted updates.
-
Own firmware builds, versioning, flashing, over-the-air updates, and recovery workflows so deployed vehicles run known, traceable software.
-
Build automated tests, simulation, and hardware-in-the-loop coverage that catch regressions and exercise failure modes before releases reach the fleet.
-
Partner with manufacturing and flight operations to make provisioning, calibration, diagnostics, and servicing repeatable and practical.
-
Investigate bench and field failures using logs, telemetry, and lab instruments; resolve root causes and turn what you learn into better software and tests.
What We're Looking For
-
3+ years of hands-on experience developing embedded software or firmware for microcontroller-based systems, including board bring-up, hardware integration, and deployment into production or field use.
-
Demonstrated ownership of an embedded subsystem from design through release and ongoing support, including making technical decisions independently, validating behavior on hardware, and resolving failures in real operating conditions.
-
Strong systems programming skills in Rust and/or C/C++, with the ability and willingness to work across both Rust and C/C++ codebases.
-
Practical experience with peripheral drivers and communication buses such as CAN, UART, SPI, and I2C.
-
Comfort reading schematics and using oscilloscopes, logic analyzers, and hardware debuggers to isolate problems across electrical and software boundaries.
-
The ability to reason about system failures and implement robust state machines, fault detection, safe outputs, and recovery paths.
-
Experience building maintainable firmware with version control, reproducible builds, automated testing, and disciplined release practices.
-
Evidence of high agency: you surface problems without waiting to be assigned, make sound decisions with incomplete information, ask for help when it matters, and close the loop on results.
-
Clear communication and the ability to work closely with hardware engineers and operators, explain tradeoffs, and document decisions so others can build and service what you ship.
What Will Set You Apart
-
Experience with drones, robotics, aerospace, or other systems where software controls physical equipment in demanding conditions.
-
Familiarity with PX4, MAVLink, flight-controller development, or flight-critical software.
What Success Looks Like In the First 90 Days
Role context
This Embedded Software Engineer role at Make Rain sits in the engineering track within drone and robotics operations. The position is tied to El Segundo, CA and is posted within the last day, which signals active hiring intent rather than archived demand. Compensation is not disclosed in the source listing, so candidates should verify range details directly with the employer. Combined with the live company and role links on this page, this listing gives candidates a direct path to compare equivalent openings by employer, market, and role focus.
Ready for the next step?
Apply directly with Make Rain
Related roles
Location
Map preview
El Segundo, CA
Location
El Segundo, CA
Approximate role location based on the employer listing.
El Segundo, CA
Open mapRelated jobs
- Senior Electrical Engineer - Make Rain
- Electrical Engineer - Cx2
- Electrical Engineer - Make Rain
- Embedded Software Engineer (Firmware) - DoorDash Air - Robotics Software Engineer
- Software Engineer, Planning & Controls - Autonomy & Robotics, DoorDash Air - Robotics Software Engineer
- Hardware Integration Engineer, DoorDash Air - Robotics Software Engineer