Job Description
The contractor will provide software development services to the Charging & Energy department to support the development of cutting-edge charging products. The primary focus will be on C++ application development for charging products on an embedded Linux platform , including the implementation of a webserver for device commissioning and the development of the EVSE communication protocol stack based on ISO 15118-20
Responsibilities
-
Design, develop and maintain embedded Linux C++ application software for residential charging products.
-
Develop unit tests and systems level SIL tests to ensure the highest code quality.
-
Support CI/CD system software to facilitate building, testing and distribution of production-level software.
-
Develop and support software tools used for development and testing.
Essential Qualifications
-
6+ years of industry experience developing C/C++ based applications on embedded Linux and RTOS.
-
3+ years of experience with build tools such as Make and CMake.
-
Experience with implementing CI/CD pipelines using tools like GitLab CI, GitHub Actions, etc.
-
Experience with unit test frameworks e.g., Google Test.
-
Strong scripting and automation skills using languages such as Bash or Python.
Desired Qualifications
-
Experience with Yocto-based build systems for embedded devices including kernel customization, package selection, and recipe development.
-
Experience with web-based communication protocols, e.g. gRPC and WebSockets.
-
Experience working with CAN and Modbus communication interfaces.
-
Hands-on experience with containerization technologies like Docker.
-
Experience with electric vehicle charging protocols such as SAE J1772, DIN SPEC 70121, and ISO 15118.