American Battery Solutions
Embedded Software Engineer
American Battery Solutions, Lake Orion, Michigan, 48360
American Battery Solutions has a full-time opening for an Embedded Software Engineer in Lake Orion, Michigan. Job Summary: The Embedded Software Engineer is responsible for the design, development, and testing of Battery Management System (BMS) software and controls applications for both 48V and high-voltage lithium-ion battery systems. The individual will be responsible for specifying, implementing, and validating software related to Li-Ion battery systems. The candidate will need to be well-versed in software and controls development, battery algorithms, functional safety, and CAN communications as well as typical development tools. Responsibilities: Work closely with System Engineer(s) to develop functional design and implementation of battery management software features. Work closely with System Engineer(s) to design, develop and test control systems. Design, analyze, implement, and test modular real-time embedded software for battery management system. Document design using state of the art tools like Enterprise Architect. Write test plans, procedures, and test specifications. Support DFMEAs for controls and battery systems. Be able to work in a wide range of environments and disciplines to avoid and solve problems in safety-critical systems. Support development of ASPICE, Functional Safety and Cyber Security processes. Adhere to federal and state regulations. Adhere to all company policies, processes, and procedures. Performs other duties as requested, directed, or assigned. Predictable and reliable attendance. Position Qualifications: Bachelor's degree in computer science, or equivalent degree. Minimum of three (3) years of experience working in microcontroller-based systems and architectures like PPC, ARM and DSP. Experience working with embedded programming languages like Python, C, and C++. Experience with Coding Standard MISRA. Experience with embedded software development tools and build processes (debuggers, trace, cmake, CI/CD). Experience with CAN and CAN development tools including CANalyzer and CANoe. Ability to work in a team and individually. Proven ability to analyze problems and find solutions. Preferred Qualifications: Master's degree in computer science or equivalent. Experience in Automotive. Experience in Battery Management System software and controls. Experience with Matlab/Simulink/Stateflow. Experience with Modeling Languages like UML and SysML. Experience with configuration and defect management tools (Git, Bitbucket, Jira). Experience with static analysis tools such as Perforce QAC. Experience with High Voltage batteries and safety knowledge. Key Competencies: Communications: Exchanges thoughts, feelings, and information effectively. Continual Improvement: Displays a consistent orientation toward producing the highest quality products or services, while keeping a focus on sustainability. Constantly looking for incremental improvements in work processes and results. Delivers Results: Achievement-oriented, feeling a sense of urgency to reach goals on time, if not before. Teamwork: Works cooperatively with others to accomplish team goals and organizational objectives. Takes Initiative: Exhibits strong drive for results and success; conveys a sense of urgency and drives issues to closure; persists despite obstacles and opposition. Influences Others: Has personal and organizational impact built on mutual trust, fairness, and honesty. Flexes their style to direct, collaborate, or empower, as the situation requires. Mission, Vision, Values, and Strategic Priorities Focused: Understands and actively supports the organization's mission, vision, values, and strategic priorities. Physical Requirements / Working Conditions: The physical demands described here are representative of those that must be met by an employee to successfully perform the essential functions of this job. Reasonable accommodations may be made to enable individual