SPAN

Senior Device Software Engineer

Bengaluru
C C++ Embedded Linux UART I2C USB WiFi Bluetooth Zigbee
Description

Senior Device Software Engineer (Firmware)

Department: Software Engineering

Location: Bengaluru

Employment Type: FullTime

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.

SPAN
SPAN

0 applies

0 views

There are more than 50,000 engineering jobs:

Subscribe to membership and unlock all jobs

Engineering Jobs

60,000+ jobs from 4,500+ well-funded companies

Updated Daily

New jobs are added every day as companies post them

Refined Search

Use filters like skill, location, etc to narrow results

Become a member

🥳🥳🥳 452 happy customers and counting...

Overall, over 80% of customers chose to renew their subscriptions after the initial sign-up.

To try it out

For active job seekers

For those who are passive looking

Cancel anytime

Frequently Asked Questions

  • We prioritize job seekers as our customers, unlike bigger job sites, by charging a small fee to provide them with curated access to the best companies and up-to-date jobs. This focus allows us to deliver a more personalized and effective job search experience.
  • We've got over 200,000 jobs from 15,000+ vetted companies. No fake or sleazy jobs here!
  • We aggregate jobs from 15,000+ companies' career pages, so you can be sure that you're getting the most up-to-date and relevant jobs.
  • We're the only job board *for* software engineers, *by* software engineers… in case you needed a reminder! We add thousands of new jobs daily and offer powerful search filters just for you. 🛠️
  • Every single hour! We add 2,000-3,000 new jobs daily, so you'll always have fresh opportunities. 🚀
  • Typically, job searches take 3-6 months. EchoJobs helps you spend more time applying and less time hunting. 🎯
  • Check daily! We're always updating with new jobs. Set up job alerts for even quicker access. 📅

What Fellow Engineers Say