Senior Engineer - Embedded Software

Engineering Bangalore, India


Enphase Energy is a global energy technology company and leading provider of solar, battery, and electric vehicle charging products. Founded in 2006, Enphase transformed the solar industry with our revolutionary microinverter technology, which turns sunlight into a safe, reliable, resilient, and scalable source of energy to power our lives. Today, the Enphase Energy System helps people make, use, save, and sell their own power. Enphase is also one of the fastest growing and innovative clean energy companies in the world, with approximately 68 million products installed across more than 145 countries. 

We are building teams that are designing, developing, and manufacturing next-generation energy technologies and our work environment is fast-paced, fun and full of exciting new projects.

If you are passionate about advancing a more sustainable future, this is the perfect time to join Enphase!


About the role:

Enphase is seeking Embedded Software Engineers to join our engineering and technology teams.  These engineers will be responsible for firmware development for Enphase’s microgrid products, including inverters and gateway products.  This engineer will create intellectual property and demonstrate it with prototype designs.  This engineer will transition work from conception to engineering to production, while collaborating with teams in California, Texas, India, and New Zealand.

This position is within our Software Engineering group, where you will work with a small team to develop fully functional prototypes to demonstrate new advanced operation and control for autonomous grid connection, management and regulation. You will be working in a multi-site team and expected to interface across multiple functions.


What you will be doing:

Design and implement embedded software for microcontroller systems running with Linux or a real-time OS.

Ability to debug and troubleshoot issues in complex systems.

Ability to take full responsibility and carry a design task from concept to implementation.

Ability to document engineering requirements, document solutions, and test new firmware designs.

Working with cross functional teams to test and troubleshoot issues.

Solid understanding of the Software Development Life Cycle including Agile methodology

Self-motivated individual with the ability to work under minimal supervision


Who you are and what you bring:

  • BE/BTech/MS/MTech in electrical engineering, computer engineering, or computer science - with minimum
  • Minimum 5 years of experience in embedded software development
  • Embedded software development for systems with Linux OS or multi-threaded RTOS.
  • Exposure to ARM based microcontroller systems desired.
  • Experience in hands-on design, development and debugging
  • Strong understanding of C/C++ programming concepts, and operating systems concepts.
  • Strong understanding of data structures and algorithms.
  • Desire to perform test-driven development and develop compilation-time unit-tests.
  • Experience in scripting languages like Python, Ruby, Lua, etc.
  • Familiarity with development tools such as GCC, GDB, Eclipse, GNU Make, etc.
  • Experience in Git, Jira and Confluence desired.
  • Integration of communication protocols, such as Zigbee, Bluetooth, BLE, WiFi, and power line communication
  • Basic knowledge of Solar, energy storage, and microgrid products
  • Basic EE skills