Principal Engineer Embedded Software

Research and Development Bangalore, India


Position at Enphase Energy


Job Description


Our Vision:

World’s best software-defined home energy solutions company



  • Milestone years

TimelineDescription automatically generated

Global Footprint






  • Hyperlinks




Role Title

Principal Engineer Embedded Software


CTO India

Reports To

CTO Lead India




Mission (Why does this role exist?) and Scope (About the Job)

Enphase Energy is one of the fastest growing and most dynamic Energy Systems Companies in the world. Today, our integrated hardware and software solutions empower people to make, store, use, sell, and share their own energy. We are accelerating the shift away from fossil fuels and toward the clean electrification of our homes, businesses, and communities. Enphase has already installed more than 34 million microinverters, which are helping power approximately 1.5 million households across 130 countries.

We are continuing to grow around the world. Enphase was listed on the S&P 500 for the first time in January 2021, featuring a market capitalization of more than $20 billion.

CTO team at Enphase nurtures forward looking technologies and works closely with business units to consume them for upcoming product development. We are now extending our CTO organization in Bangalore by building ~15-member team. This team will consist of technology leaders with deep hands-on experience and passion for technology. 


We are looking for an experienced Principal IoT Embedded Software Application Engineer. In this role you will be researching state of the art options, assessing their merits, assembling proofs of concepts and mentoring other members of the team.  You will see the “big picture” and define embedded application designs for Enphase’s IoT systems. A great technology expert and senior staff engineer has a strong technical background with excellent development and communications skills. They are experienced in designing and possess ability to develop a unified vision. 


Key Responsibilities and Outcomes (What the Person needs to accomplish in the role?)


  • Architect, design and prototype scalable IoT embedded software/firmware systems and portable components. 
  • Develop precise, testable, software system requirements which are tightly coupled to market requirements and use cases. 
  • Debug and troubleshoot issues in complex embedded systems. 
  • Architect system features, identify tasks, and provide technical leadership to other members of the technology teams  
  • Analyzing complex system software architecture and development issues, assessing their impact, presenting alternatives, and recommending preferred solutions  
  • Ensure system and software architecture, design, and implementation meet all requirements of quality, scalability, security, extensibility, etc.  


Qualifications: Education, Competencies (Knowledge, Skills & Behaviour) and Experience


  • Minimum Qualifications
  • BE Computer Science/Electronics/Communication/Electrical Engineering + 15 years relevant experience or 
  • MS Computer Science/Electronics/Communication/Electrical Engineering + 12 years relevant experience 
  • Minimum 4 years of experience developing Embedded Linux system with awareness of kernel development, application programming, multithreading, process management and IPCs 
  • Strong Object oriented design, development skills of 8+ years using C/C++ ( >= C++11) and Data structures 
  • Expertise on ARM based microprocessors and microcontrollers, toolchain, debugging, OTA and boot loader 
  • Possess good working knowledge in IoT communication protocols such as REST, HTTP, MQTT, CoAP, AMQP, Protobuff, json, Avro, Ethernet, CAN and wireless 
  • Proven track record of designing, architecting, maintaining embedded systems from inception to industrialization. Knows to apply formal design process, methods and tools. 
  • Excellent communication, documentation skills and team player. 


  •  Preferred Qualifications
  • Understands IoT security aspects such as Network attacks, VPN, TLS/SSL, PKI, X509 protocols, Threat model, Authentication and Authorization 
  • Experience in development on any or one among Android, Go, Rust, Python environment
  • Exposure to docker containers, virtualization & micro-services
  • Know-how of Electrical domain, Energy management, solar and smart grid applications