We are Generac, a leading energy technology company committed to powering a smarter world.
Over the 60 plus years of Generac’s history, we’ve been dedicated to energy innovation. From creating the home standby generator market category, to our current evolution into an energy technology solutions company, we continue to push new boundaries.
GeneracHome Interconnect and Controlsis dedicated to deliveringinnovative home energy interconnection and control systems—transfer switches, smart breakers, load management, and connected controls—that improve energy reliability, resilience, and grid independence for our residential customers.
GeneracHome Interconnect and Controlsis looking for a motivatedSenior Firmware Engineer with insatiable curiosity to help deliver and continuously improve a broad portfolio of reliable, connected residential energy products. This role entails ownership of firmware implementation, validation, and ongoing fleet improvements. The candidate will show outstanding technical and organizational skills and be passionate aboutadvancing reliable, connected home energysolutions.
Key Responsibilities
- Develop controlfirmwareforhome interconnect and control devices
- Contribute to firmware and system architecture across controls, communications, anddevice connectivity, partnering closelywithelectronics and hardware teams.
- Develop, enhance and debug new and existing real-time firmware in Cand C++. Deliver high-quality code in a real-time embedded environment.
- Investigatefield issueson connected devices using Generac’s platform and field-investigation tools to collect and analyze data, reproduce problems,determineroot cause, and deliver firmware updates that resolve them across the fleet.
- Drive firmware development for performance, scalability, robustness, and tight integration with the hardware.
- Hands-on hardware bring-up, build and executecomponentvalidation to deliver robust, functional code.
Qualifications
- BS in Engineering, Computer Science, Mathematics,Physicsor proof of exceptional skills in related fields with practical firmware engineering experience.
- At least 5 years of relevant firmware engineering experience.
- Experiencedeveloping firmware for connected or networked embedded products,includingremote diagnostics,telemetry, andover-the-air firmware updates.
- Capable of delivering top quality C/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, and cellular/wireless connectivityis desired.
- Experience with test driven development experience using unit testing, software in the loop, or hardware in the loop methodologies. Our developersparticipatesignificantly in firmware testing, so a validation mindset isrequired.
- Familiar with software testing libraries including Unity andCMock.
- Familiar with electrical test tools like scopes, meters, and power supplies.
- Desired to have experiencewith low-level peripherals (ADC, PWM, timers, GPIO)andtime-critical control codePower electronics or power conversion experience (inverters, DC-DC, power management) is a plus but notrequired.
- 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.