Sr Staff SW Engineer

Software Bangalore, India


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.


  • BE/BTech/MS/MTech in electrical engineering, computer engineering, or computer science.  
  • Minimum 10 years of experience in embedded software development

Technical Capabilities or Experience in many or most of the following:

  • 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.

Bonus Skills/Experience

Integration of communication protocols, such as CAN, Zigbee, Bluetooth, BLE, WiFi, and power line communication.
Knowledge of  integrated energy management system (EMS) where  multiple devices like EVSE, Heat pumps & similar equipments can be integrated .

Basic knowledge of Solar, energy storage, and microgrid products; Basic EE skills

Typical Activities

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