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 do
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