Job Description
Job Description
Salary :
Firmware Engineer for EV charging system
Intermediate level
Directs the activities related to the analysis, design, programming, debugging, troubleshooting, and modification of software for firmware (IC embedded code) applications. Oversees programming activities involving analog and digital hardware and software operating systems. May have responsibility for the programming of assembly language, machine language and high level languages, including but not limited to C and C++. Selects, develops, and evaluates personnel to ensure the efficient operation of the function.
Responsibilities
- Develops full software stack for EV charging station including firmware, OCPP / OCPI protocol and more; enables co-work of development and algorithm engineers on the same software code base
- Supports internal and external software products
- Develops understanding of and relationship with internal and outsourced development partners on firmware design and development
- Participates as a member of project team of other firmware engineers and internal and outsourced development partners to develop reliable, cost effective and high quality solutions for low to moderately-complex products
Knowledge & Skills
Microchip and Atmel based AVR chip experience.Ocpp protocol experiencesESP32 based wifi chip experiences.Experience or understanding of firmware design tools and languages. Proficient in Assembly and C / C++ programming languagesDemonstrated desire to learnStrong coursework in software development, systems engineering, software product management, or electrical engineeringAbility to understand and deal well with rapid development cycles and remain flexible in the face of uncertaintyGood analytical and problem solving skills.Proficient in reading complex component datasheets and board schematicsGood written and verbal communication skills; mastery in English and local language.Scope & Impact
Supports software engineering leadershipWorks closely with architects and technology leads, directly engaging with internal and external software development teamsDirectly impacts delivery time and qualityPractical knowledge of applications within business environment. Acts as team member by providing information, analysis and recommendations in support of team efforts. Exercises independent judgment within defined parameters.Education & Experience
Bachelor's degree in relevant area or demonstrated competence. Typically 2-4 years of related experience.