Device - Software Engineer (Firmware)

span· Software Engineering
Apply Now ↗
📍 BengaluruFullTime

About this role

Our Mission

SPAN develops products that accelerate the rapid adoption of renewable energy in the home. The flagship SPAN Smart Panel is the first true evolution for the traditional home electric panel, harnessing enhanced technology for metering, monitoring, and control. An expanded product suite of intelligent, integrated solutions radically lowers the cost and complexity of energy upgrades–including solar, batteries and EVs–empowering homeowners to be active, resilient and informed players in the energy market.

The Team and Role

SPAN’s Device Software team is responsible for all of the software that is physically embodied in our hardware products. Our first product - the SPAN Panel - contains a complex network of microcontrollers and a single board computer that must work together to react quickly to changing conditions with impeccable reliability in order to perform its job. We look for friendly, excellent engineers who enjoy working with their peers to solve complex problems and prioritize trusting that the people we hire are capable of great things when well supported. Engineers work directly with the broader software, product, and hardware teams to ensure the right things get built at the right time.

As an engineer on the Device Software team you will define and implement new features directly related to SPAN’s hardware products focusing on the lowest level - the microcontroller. This includes everything from bootloaders on systems without an OS up through applications in C and C++ inside an RTOS. Hardware products are central to SPAN’s business and writing firmware for even our smallest microcontrollers means working on something that directly impacts the user experience. You will own large user-facing features from conception through implementation on future hardware products, working independently to bring them to completion.

Representative Projects

  • Designing an OTA system that encompasses a variety of communication interfaces, processor types, and products, while achieving both secure goals for hardware-backed encryption and verification and high reliability.

  • Working with system architects to invent a data steaming architecture for a new product family which can satisfy both the needs of the data science team to access high rate and quality data, as well as safety guarantees around consistency and accuracy.

  • Representing the Device Software team in group settings and evangelizing engineering best practices. Participating in code and design reviews as well as authoring documents which further reinforce these goals, and supporting engineers across the org in hitting them.

About You

Required Qualifications

We are seeking a Firmware/Embedded Linux engineer with:

  • 5 or more years of experience writing software for a hardware device (on a microcontroller, and/or in Linux, etc) in C++ or C

  • Strong fundamentals in modern software design with tools like Object-Oriented design, coupled with awareness of concerns like manual memory management

  • Experience working with standard electrical communication interfaces like UART, I2C, USB, etc

  • Exceptional interpersonal communication and collaboration skills. Great at building trust and driving decisions to a resolution

  • Track record of taking ownership over projects and willingness to help others with theirs, from design and code review through to mentorship of new employees

Bonus Qualifications

We do not expect any engineer to have all skills, but we do want you to be excited to learn and grow. Every Device Software Engineer is free to roam up and down our device software stack, so any combination of the following skills is welcome but not required.

  • Experience with the STM32 microcontroller family

  • Experience with functional safety and processes and standards like UL 60730, ISO 26262, IEC 61508, and UL 1998

  • Experience writing higher level system or application software such as diagnostic command line tools or the application side of a communication interface

  • Wireless technologies like WiFi, Bluetooth and Zigbee

  • Hands-on experience with electronics lab equipment

  • Clean energy hardware in a multidisciplinary environment.

Frequently Asked Questions

Is the salary disclosed for the Device - Software Engineer (Firmware) position at span?
The salary for this Device - Software Engineer (Firmware) role at span is not publicly listed. Click "Apply Now" to learn more about the compensation package on their official careers page.
Where is the Device - Software Engineer (Firmware) position at span located?
This Device - Software Engineer (Firmware) role at span is based in Bengaluru. The position is listed as on-site or hybrid. Check the full job description or apply directly to confirm the work arrangement.
Is the Device - Software Engineer (Firmware) role at span full-time or part-time?
This is listed as a FullTime position. It is posted as a Device - Software Engineer (Firmware) role in the Software Engineering department at span.
Which team or department does the Device - Software Engineer (Firmware) at span belong to?
This Device - Software Engineer (Firmware) position is part of the Software Engineering department at span. See the full job description for more information about the team structure and responsibilities.
How do I apply for the Device - Software Engineer (Firmware) position at span?
Click the "Apply Now" button on this page. You will be redirected to span's official application portal hosted on ashby where you can submit your application directly.
When was the Device - Software Engineer (Firmware) job at span posted?
This Device - Software Engineer (Firmware) position at span was posted on Jan 5, 2026. Apply as soon as possible — early applications are often reviewed first.
Device - Software Engineer (Firmware)
span
Apply for this role ↗

You'll be redirected to span's official application page on Ashby ATS.