onsite
Software Development Engineer III - Generac Power Systems
Software Engineer
Experienced Software Development Engineer III designing, implementing, and testing embedded power generation control systems with web and mobile interfaces, leveraging C++, Python, and Linux environments.
About the role
Key Responsibilities
- Design and develop embedded firmware for power generation control units, ensuring reliability and real‑time performance.
- Implement and maintain communication interfaces (REST APIs, MQTT) for remote monitoring and control via web and mobile applications.
- Write automated unit and integration tests, and conduct hardware‑in‑the‑loop testing to validate system functionality.
- Collaborate with cross‑functional teams using Agile methodologies to define requirements, prioritize features, and deliver incremental improvements.
- Maintain source control, code review processes, and continuous integration pipelines using Git and related tooling.
Requirements
- Bachelor's degree in Computer Science, Electrical Engineering, or related field with 5+ years of professional software development experience.
- Strong proficiency in C++ and Python for embedded and application‑level development.
- Hands‑on experience with Linux‑based embedded platforms and real‑time operating systems.
- Familiarity with version control (Git), CI/CD pipelines, and Agile development practices.
- Ability to troubleshoot hardware‑software integration issues and write comprehensive automated tests.