Power Electronics and Controls Firmware Engineer II
Bedford, MA 
Posted 18 days ago
Job Description

Company Generac Power Systems

Name Power Electronics and Controls Firmware Engineer II

Req # 64301

Employment Type Full Time

Shift 1st

It's a challenge and an invitation. Most importantly, it's an opportunity to join an innovative industry leader as part of our Clean Energy Team. As we invest in new companies and technologies, we're shaping the market and becoming a global powerhouse in the Energy Storage System Market, leading to steady, unprecedented growth. This rapid growth equals rapid career advancement opportunities for those who want to be challenged and enjoy a fast-paced, high-performance culture.

Generac Clean Energy is dedicated to delivering revolutionary Battery Energy Storage Systems (BESS) for our residential customers to improve energy reliability and grid independence. Generac Clean Energy is looking for a motivated Firmware Engineer with insatiable curiosity to help create next generation energy storage designs.

This role entails ownership of firmware implementation, validation, and ongoing fleet improvements. The candidate will show outstanding technical and organizational skills and be passionate about bringing sustainable energy to the world.

This role requires onsite work in either Bedford, MA or South Portland, ME.

What You'll Do:
  • Develop control algorithms for switch mode power electronics.
  • Drive power electronics, communications, and battery design architecture with a firmware focus.
  • Develop, enhance and debug new and existing real-time firmware in C. Deliver high-quality code in a real-time embedded environment.
  • Drive firmware development for performance, scalability, robustness, and tight integration with the hardware.
  • Design safety rated firmware to meet UL1998 or related standards.
  • Hands-on hardware brings up, build and execute component validation to deliver robust, functional code.

What You'll Bring:
  • BS in Engineering, Computer Science, Mathematics, or Physics.
  • At least 2 years of relevant work experience.
  • Experience with switch mode power electronics including inverters, DC-DC converters, power management, power conversion and control.
  • Capable of delivering top quality C code in a real time embedded environment.
  • Excellent software fundamentals including architectural design, algorithm development, data structures, code modularity, and maintainability.
  • Multithreaded and RTOS experience. Experience with communication interfaces on embedded systems such as RS-485, CAN, SPI, I2C is desired.
  • Experience with test driven development experience using unit testing, software in the loop, or hardware in the loop methodologies. Our developers participate significantly in firmware testing, so a validation mindset is required.
  • Familiar with software testing libraries including Unity and CMock.
  • Familiar with electrical test tools like scopes, meters, and power supplies.
  • Desired to have experience developing time critical code using ADC, PWM for power controls and battery management.
  • Desired to have experience in the development of embedded software compliant to formal safety certification processes such as UL1998 or similar.
  • Desired to have Python or Rust experience for supporting tools and data analysis.
  • Remain engaged, proactive and positive when taking on challenging tasks, owning assignments and taking accountability for personal and overall team success.
  • Ability to collaborate and communicate complex technical concepts.

"We are an equal opportunity employer and all qualified applicants will receive consideration for employment without regard to race, color, religion, sex, national origin, disability status, protected veteran status, or any other characteristic protected by law."

Generac Power Systems Inc. is an equal opportunity employer/Minorities/Females/Vet/Disability.


Job Summary
Start Date
As soon as possible
Employment Term and Type
Regular, Full Time
Required Experience
2+ years
Email this Job to Yourself or a Friend
Indicates required fields