What are the responsibilities and job description for the Firmware Engineer II position at Generac?
Roles And Responsibilities
- Support firmware design, implementation, and testing for smart energy products
- Design, validate, and bring new products to market - specific responsibilities include designing and developing application software/firmware for embedded controllers in C, defining interface requirements, and creating firmware for communication interfaces and/or system algorithms
- Design of new control algorithms and performing Applications Engineering
- Develop new firmware or software modules, and maintain supporting documentation;
- Create, design and develop test specifications for new systems and firmware/software
- Conduct and evaluate test specifications, including testing firmware/hardware
- Take part in Design for Manufacturability and Design for Test Activities
- Collaborate with internal product development departments and other core engineering teams, including engines, transfer switches, alternators, and others as needed, to specify interfaces and/or algorithms needed in controls for the interface
- Utilize simulation tools as appropriate
- Help implement design documentation
- Help troubleshoot designs
- Participate in design reviews
- Other duties as assigned; anticipate less than 10%
- Bachelor of Science in Electrical Engineering, Computer Engineering, Computer Science or directly related Engineering discipline
- 3 years of experience with embedded programming using languages such as C, C , and Python
- Ability to perform detail-oriented work with a high degree of accuracy
- Ability to translate technical information to all audiences
- Understanding and knowledge of engineering principles
- Able to solve intermediate engineering problems; good decision-making skills
- Knowledge of communication protocols/hardware interface
- Ability to write test firmware to test hardware designs
- Ability to read and diagnose schematics
- Advanced ability to use FMEA/DFMEA tools and write test firmware
- Can interface with CAN and cross-functional teams