What are the responsibilities and job description for the Firmware Engineer position at EV Mode?
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 experiences
- ESP32 based wifi chip experiences.
- Experience or understanding of firmware design tools and languages. Proficient in Assembly and C/C programming languages
- Demonstrated desire to learn
- Strong coursework in software development, systems engineering, software product management, or electrical engineering
- Ability to understand and deal well with rapid development cycles and remain flexible in the face of uncertainty
- Good analytical and problem solving skills.
- Proficient in reading complex component datasheets and board schematics
- Good written and verbal communication skills; mastery in English and local language.
Scope & Impact
- Supports software engineering leadership
- Works closely with architects and technology leads, directly engaging with internal and external software development teams
- Directly impacts delivery time and quality
- Practical 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.