WindBorne Systems logo

Firmware Intern

WindBorne Systems

Marquette, MIFull-time$33/hrPosted 1mo agoVerified open 5 days ago

Most applications go out cold — see where you stand first. No sign-up to start.

At a glance

Compensation
$33/hr
Location
Marquette, MI
Role Type
Internship
Schedule
Full-time
Work Authorization
Not specified

Job overview

WindBorne Systems is hiring a Firmware Intern. WindBorne Systems seeks a Firmware Intern to develop and maintain drivers, low‑level libraries, and a custom RTOS hardware abstraction layer for its weather balloon hardware, designing fault‑tolerant systems and collaborating with R&D to optimize sensor performance under extreme conditions.

Key focus areas include Develop and maintain drivers & low level libraries for new chips, modules, & sensors, Own custom open source RTOS hardware abstraction layer and refine architecture, and Push limits of custom sensor hardware & calibration infrastructure for power optimization.

Successful candidates bring Experience Programming, Shipping, And Maintaining Hardware and Excited By Rapid Iteration. Important skills include C/C++, Python, Low-Level Driver Development, Reading PCB Schematics, Forming Hypotheses, and Running Experiments. Preferred (not required): FPGAs, HDL, RF Systems, and Wireless Protocols.

Skills & qualifications

RequiredNice to have

Skills

C/C++PythonLow-Level Driver DevelopmentReading PCB SchematicsForming HypothesesRunning ExperimentsEffective CommunicationDebuggingFPGAsHDLRF SystemsWireless ProtocolsUndergrad Level PhysicsWriting Low-Level DriversForm Hypothesis and Run ExperimentsEffective CommunicatorDebugging Skills

Qualifications

Experience Programming, Shipping, and Maintaining HardwareExcited by Rapid IterationDone a Bit of EE YourselfDegree in Computer Science/Electrical Engineering or Related Field

Full job description

WindBorne Systems is supercharging weather models with a unique proprietary data source: a global constellation of next-generation smart weather balloons targeting the most critical atmospheric data. We design, manufacture, and operate our own balloons, using the data they collect to generate otherwise unattainable weather intelligence.

Our mission is to eliminate weather uncertainty, and in the process help humanity adapt to climate change, be that predicting hurricanes or speeding the adoption of renewables. We are building a future in which the planet is instrumented by thousands of our microballoons, eliminating gaps in our understanding of the planet and giving people and businesses the information they need to make critical decisions. The founding team of Stanford engineers was named Forbes 2019 30 under 30 and is backed by top investors including Khosla Ventures.

WindBorne is looking for a Firmware Intern to build the code bases that runs on our balloon hardware. As a vertically integrated weather company, we design, calibrate, & integrate our own custom sensors & control mechanisms into our autonomous balloons. This poses some unique challenges: most components are outside their temperature spec, power is extremely limited and it is not easy to update code when the system is many miles in the air. We believe the most interesting work happens at the intersection of hardware and software, where clever code can compensate for physical limitations. In this role, you’ll design and run experiments to understand the behaviors of our system in weird conditions, then cosplay as a 1960s NASA engineer to glean insight from the limited data available. You’ll own firmware strategy, making quick, tactical decisions on whether to vomit some code for a janky test or design a robust solution that will accelerate future development. From maintaining our custom RTOS and hardware abstraction layer to developing the driver interfaces for our suite of atmospheric sensors, you'll be solving fascinating challenges alongside a team of brilliant, passionate engineers who are revolutionising our understanding of the atmosphere.

This role is open at any point, not just during the summer. Applications are considered on a rolling basis.

Responsibilities:

  • Develop and maintain drivers & low level libraries for new chips, modules, & sensors

  • Own our custom open source RTOS hardware abstraction layer, Amslah. It has many custom features made for our unique application (I’m excited to tell you about them!) but but requires hardening and architecture refinements as we scale

  • Push the limits of our custom sensor hardware & calibration infrastructure, ensuring our GSBs are power optimized & survive extreme cold beyond subcomponent specifications.

  • Work closely with people doing R&D on novel hardware as we seek to improve the accuracy of our meteorological measurements.

  • Design fault-tolerant systems that can recover gracefully from unexpected conditions

  • Debug highly non-trivial issues

Skills and Qualifications:

  • Experience programming, shipping, and maintaining hardware in a real-world setting.

  • Must be excited by rapid iteration more than trying to perfectly plan ahead of time

  • Fluent in C/C++ and Python. Though ideally you ever so slightly look down on software engineers who only write interpreted languages, but you wouldn’t admit this because you are too nice.

  • Should have experience writing low-level drivers for a number of various chips.

  • Should be comfortable reading PCB schematics. Ideally have done a bit of EE yourself :)

  • Be able to form hypothesis and run experiments about the behaviour of the system

  • Must be an effective communicator, able to cut through misunderstandings to the core of an issue and reason about tradeoffs in complex multidisciplinary spaces

  • Excellent debugging skills in complex settings

Nice to have:

  • Experience with FPGAs and HDL

  • Knowledge of RF systems and wireless protocols

  • Degree in Computer Science/Electrical Engineering or related field

  • Stellar understanding of undergrad level physics

Salary

  • $33/hr

LOCATION

1600 Bridge Pwky, Redwood City, CA. In person required.

You've read the whole posting — now see how you match it.