Embedded Software Engineer

Website MakerMax Inc.

Join a team of 7 passionate software, hardware, electrical and mechanical engineers working on state-of-the-art battery management systems at an exciting time in the company. A new product line is being developed and it is a great time to join the team

Please include a portfolio of your relevant projects along with your resume.

Role

This role will assist in designing and implementing battery management software for our next generation batteries. If you like working in smaller teams with a focus on developing cutting-edge products this opportunity will be well suited for you.
• Design, develop, and test software for battery management systems, ensuring performance, safety, and reliability.
• Collaborate with cross-functional teams, including hardware engineers and system architects, to integrate software with battery hardware.
• Develop algorithms for battery state estimation, charging control, and thermal management.
• Conduct performance analysis and optimization of software components to enhance system efficiency.
• Troubleshoot and debug software issues in a lab and field environments.
• Document software specifications, architecture, and testing protocols.

Qualifications

• 5+ years of experience in software development, preferably in battery management systems or other safety critical fields.
• Proficiency in programming languages such as C/C++, Python, or similar.
• Experience with real-time operating systems (RTOS) and embedded systems design.
• Deep experience with Yocto, Linux kernels
• Knowledge of communication protocols such as CAN, Modbus, TCP, ISOSPI
• Being able to read hardware schematics and being hands-on with hardware is an asset
• Strong understanding of battery technologies, BMS architecture, and related safety standards.
• Familiarity with tools for version control (e.g., Git) and software development methodologies (Agile, Scrum).
• Excellent problem-solving skills and attention to detail.
• Strong communication skills and the ability to work collaboratively in a team environment.
• Ability to explain complex programs in an effective manner
• Understanding of machine learning techniques as applied to battery management systems is an asset