Embedded Software Engineer - Intern (E)
At Enphase, we think big. We’re on a mission to bring solar energy to the next level, one where it’s ready to meet the energy demands of an entire globe. As we work towards our vision for a solar-powered planet, we need visionary and talented recent graduates to join our team as Embedded Software Engineer Interns.
Our engineers are responsible for firmware development for Enphase’s microgrid products, including inverters and gateway products. They create intellectual property and demonstrate it with prototype designs, and transition work from conception to engineering to production, all while collaborating with multi-national teams spanning across California, Texas, India, and New Zealand.
We are a values driven company and we are committed to innovation, quality and responsibility. If these are your values, too, you could be the next to join us on our quest for a more sustainable planet.
Design and implement embedded software for microcontroller systems running with Linux or a real-time OS.
Debug and troubleshoot issues in complex systems.
Own and carry a design task from concept to implementation.
Document engineering requirements, document solutions, and test new firmware designs.
Work with cross functional teams to test and troubleshoot issues.
Pursuing a BS, MS, or Ph.D. in electrical engineering, computer engineering, computer science, or related field
Solid CS fundamentals with a strong understanding of data structures and algorithms.
Strong understanding of C/C++ programming concepts, and operating systems concepts.
Experience in scripting languages like Python, Ruby, Lua, etc.
Experience in Git, Jira and Confluence
Experience in hands-on design, development and de-bugging
Understanding of the Software Development Life Cycle including Agile methodology
Self-motivated with the ability to work independently
What would make you stand out?
Experience with embedded software development for systems with Linux OS or multi-threaded RTOS.
Exposure to ARM based microcontroller systems
Desire to perform test-driven development and develop compilation-time unit-tests.
Familiarity with development tools such as GCC, GDB, Eclipse, GNU Make, etc.
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