Lead Firmware Engineer

Santa Clara, CA
Technology Group - Future Energy Technology Center – Firmware /
Full-time (Hybrid) /
Hanwha Q CELLS Co., Ltd., is one of the world´s largest and most recognized photovoltaic manufacturers for its high-performance, high-quality solar cells and modules. It is headquartered in Seoul, South Korea (Global Executive HQ) and Talheim, Germany (Technology & Innovation HQ). Through its growing global business network spanning Europe, North America, Asia, South America, Africa, and the Middle East, the company provides excellent services and long-term partnerships to its customers in the utility, commercial, government, and residential markets. Hanwha Q CELLS is a flagship company of Hanwha Group, a FORTUNE Global 500 firm and a Top 7 business enterprise in South Korea. 

Our mission is to provide affordable and smart energy solutions through technology and innovation to create a sustainable future for the planet. We are expanding our business by offering revolutionary energy systems to residential customers including ESS, MLPE (power optimizers, micro-inverters), EV charging solutions, and Smart IoT with world-class solutions. 

Future Energy Technology Center (FETC) is seeking a Lead Firmware Engineer to work on new power electronics development in renewable energy, EV charging, energy storage, and more. You will implement firmware and control algorithms in bare metal systems to control power stages ranging from a few hundred watts to megawatts, implement communication algorithms, and support firmware from the R&D stage to production. Additional responsibilities include designing and maintaining firmware architecture across multiple platforms and mentoring other firmware engineers.


    • Develop and debug modular low-level, real-time, and low-latency firmware in C.
    • Develop control algorithms for power electronics products: solar converters, EV chargers, energy storage, etc.
    • Drive modular and scalable embedded firmware architecture to support multiple hardware platforms.
    • Design and implement communication protocols based on UART, SPI, I2C, CAN, and higher level comm like PLC, BT.
    • Lead board bring-up, debug, test, and code optimization.
    • Collaborate with all other engineering teams (electrical, mechanical, controls).
    • Generate software specifications and design documents.
    • Lead project schedules and timelines.
    • Lead and mentor other firmware engineers.
    • Support design reviews and DFMEA activities.
    • Build advanced simulation and validation capabilities (Typhoon HIL, PLECs RTbox, Matlab speedgoat, or similar).


    • BS or MS in Electrical Engineering/Computer Engineering/Computer Science, or equivalent.
    • 5+ years of professional firmware/embedded software development experience.
    • Experience with embedded systems compilers, debuggers, IDE's.
    • Experience developing embedded device drivers including ADC, GPIO, PWM, UART, SPI, etc.
    • Experience working with RTOS or implementing schedulers.
    • Exceptional ability to work with multiple developers on multiple codesets.
    • Ability to integrate and troubleshoot existing code.
    • Ability to debug complex system-level issues and drive solutions.
    • Experience implementing communication protocols.
    • Experience with lab equipment: meters, oscilloscopes, signal generators, logic analyzers, etc.
    • Good understanding of schematics and circuit diagrams.
    • Experience leading workflow with git and JIRA.
    • Strong interpersonal skills and teamwork in cross-functional environments.
    • Strong communication skills, with good knowledge of spoken and written English.
    • Knowledge of scripting languages for test development.


    • Experience developing firmware in power electronics projects such as motor control/drives, AC/DC and DC/DC converters, etc.
    • Knowledge of continuous time and discrete time control and its implementation in embedded environments.
    • Experience with Software in the loop (SIL) and hardware in the loop (HIL) testing.
    • Experience with FPGA programming and ASIC development
    • Experience with digital signal processing