Find Jobs
Find Jobs Near You – Available Work in Your Location
Skip to job details
GP
GM Performance Power Units
Battery Controls Engineer
Career Insights for Embedded Software Engineer
See where this job fits in the broader career landscape. Knowing your career path helps you see what's possible from here.
Scorecard
Based on North Carolina data
Review key factors to help you decide if this role fits your goals. How is this calculated?
What they do
An Embedded Software Engineer designs or improves the embedded computer software that supports specialized hardware for certain products, devices or systems. Oversees the entire software development process. Analyzes customer or user needs, designs programs, writes code or instructs computer programmers, tests design, and documents programs. May assist with upgrades or maintenance.
$117,115 / year median in North Carolina
+10% projected growth
Job Description
Battery Controls Engineer GM Performance Power Units Concord, NC Job Details Full-time 1 day ago Benefits Disability insurance Health insurance On-site gym Employee assistance program 401(k) matching Life insurance Qualifications MATLAB Software engineering Electronic control units (ECU) Development environments High-voltage electrical systems Embedded software Version control systems RTOS Feedback control Embedded C Real-time data processing implementation Cross-functional collaboration Microcontroller programming Multithreading Energy storage systems Sensors Cross-functional communication Full Job Description GM Performance Power Units - Concord, NC Battery Controls Engineer - Onsite Job Summary GM Performance Power Units is looking for a forward-thinking Battery Controls Engineer to join our ERS (Energy Recovery System) Team in Concord, NC. In this high-stakes, high-impact role, you'll develop and optimize robust embedded controls software for our Formula 1 hybrid powertrain. Implement cutting-edge real-time control algorithms for battery protection, state of charge, and state of health. While utilizing sensors and communication protocols and system diagnostics, supporting the overall ERS hardware and software ecosystem. Collaborate with control strategy teams managing torque and energy delivery and harvest to push the boundaries and engineer winning solutions. Key Responsibilities Develop, test, and maintain embedded software in C, C++, and relevant real-time programming languages for the HV battery management system, cells, and associated components. Implement sensor data acquisition, hardware abstraction layers, real-time communication, and diagnostics features. Collaborate with cross-functional teams in controls and electrical hardware to ensure cohesive system operation. Conduct software debugging, verification, and validation including model-in-the-loop (MiL), software-in-the-loop (SiL), hardware-in-the-loop (HiL), and trackside testing support. Create proper requirements and unit tests to form robust, clean, scalable code bases. Adhere to software quality, safety, and regulatory standards for high-performance motorsport applications. Maintain technical documentation and contribute to continuous improvement processes in embedded software development. Required Qualifications Master's or PhD in Electrical Engineering, Computer Science, Embedded Systems, or related discipline; OR Bachelor's degree with 5+ years of experience in embedded software development, preferably in automotive or motorsport sectors. Expertise in battery management systems and battery control algorithms, such as protection/derating, state of charge, and state of health. Familiarity with cell and HV battery physics and operation. Understanding high voltage bus networks, including contactors, fuses, and high voltage interlock loops. Strong proficiency in embedded C programming and real-time operating systems, including ability to work with both handwritten and auto generated code. Experience with multithreaded processes/multi-rate control systems. Experience in communication protocols such as