> Markdown version of [/jobs/ext/4704966-embedded-software-developer1](https://www.wearedevelopers.com/jobs/ext/4704966-embedded-software-developer1). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Embedded Software Developer1 - **Company:** Pentangle Tech - **Location:** Plymouth, MI, United States - **Contract:** Permanent contract - **Skills:** C (Programming Language), Abstraction Layers, Software Applications, JIRA, Unit Testing, AUTomotive Open System Architecture (AUTOSAR), Booting (BIOS), C++ (Programming Language), Network Analysis, Static Program Analysis, Code Review, Communications Protocols, Computer Programming, Computer Engineering, Software Debugging, Memory Management, Embedded C, Middleware, Embedded Software, Hardware-In-The-Loop Simulation, Supervisory Control and Data Acquisition (SCADA), Python (Programming Language), MATLAB, MISRA C (C Programming Language), Software Architecture, Real-Time Operating Systems, ISO/IEC 15504, Simulink, Software Engineering, Verification and Validation (Software), Stateflow, Systems Integration, Universal Asynchronous Receiver/Transmitter, Serial Peripheral Interface, PIC Microcontroller, DOORS (Software), Gitlab, Git, Integration Tests, Information Technology, Trace32, Automotive Software, Polarion, Canoe Software, Jenkins - **Published:** November 13, 2026 - **Apply:** https://www.careerbuilder.com/job-details/embedded-software-developer1-plymouth-mi--bbd9f83e-c8e0-4b0b-82ad-a05b8bae2611 ## About the Role Embedded Software, Software Development, Embedded Software, Software Development, Software Validation, Automotive Management, Embedded Systems, Realtime Operating System, Microcontroller, C Programming Language, The ideal candidate will have strong hands-on experience in Embedded C/C++, automotive microcontrollers, CAN/CAN FD communication, ECU diagnostics, and real-time embedded software development. Experience with EV battery management, battery monitoring, protection mechanisms, and functional safety is highly preferred., * Bachelor's or Master's degree in Electrical Engineering, Electronics, Computer Engineering, Computer Science, or a related field. * Strong hands-on programming experience in Embedded C/C++. * Experience developing software for automotive embedded controllers or ECUs. * Experience with automotive microcontrollers such as: + Infineon AURIX + NXP S32K/S32G + Renesas RH850 + Similar automotive MCU platforms * Strong understanding of real-time embedded systems, interrupts, timers, memory management, ADC, PWM, GPIO, watchdogs, and boot initialization. * Hands-on experience with CAN/CAN FD and automotive communication protocols. * Knowledge of UDS, DTCs, diagnostic sessions, and ECU diagnostics. * Experience with embedded software debugging and automotive network analysis tools. Preferred BMS Experience, Embedded C, C++, Python Automotive AUTOSAR Classic, UDS, CAN, CAN FD, LIN Communication SPI, I2C, UART Microcontrollers Infineon AURIX, NXP S32K/S32G, Renesas RH850 Debugging Tools Lauterbach TRACE32, Vector CANoe, CANalyzer, CANape Model-Based Development MATLAB, Simulink, Stateflow Functional Safety ISO 26262, ASPICE, MISRA C/C++ Testing Unit Testing, SIL, HIL, Integration Testing Configuration & ALM Git, GitLab, Jenkins, Jira, Polarion, IBM DOORS Preferred Skills * Experience developing safety-critical automotive embedded software. * Understanding of ASIL-oriented software development and functional safety concepts. * Knowledge of MISRA C/C++ coding guidelines and static code analysis. * Experience with MATLAB/Simulink and model-based software development. * Knowledge of bootloaders and ECU flashing. * Familiarity with automotive ECU cybersecurity. * Strong debugging, troubleshooting, and root-cause analysis skills. * Ability to work collaboratively with hardware, systems, controls, validation, and functional safety teams. ## Description * Design, develop, and maintain embedded software for automotive Battery Management Systems (BMS). * Develop software functions for battery monitoring, State of Charge (SOC), State of Health (SOH), State of Power (SOP), cell balancing, and battery protection. * Implement battery safety features, fault management, contactor control, high-voltage interlock, and thermal management interfaces. * Develop production-quality embedded software using C/C++. * Develop and integrate low-level drivers, middleware, application software, and hardware abstraction layers. * Implement communication protocols including CAN, CAN FD, LIN, SPI, I2C, and UART. * Implement automotive diagnostics using UDS (ISO 14229), DTCs, and ECU diagnostic services. * Integrate software with battery monitoring ICs, sensors, actuators, and vehicle ECUs. * Perform debugging and troubleshooting using Vector CANoe/CANalyzer, Lauterbach TRACE32, oscilloscopes, and logic analyzers. * Support unit testing, software integration, SIL, HIL, and vehicle-level validation. * Perform root-cause analysis and resolve software defects. * Follow automotive software development standards, including AUTOSAR Classic, ASPICE, and ISO 26262. * Participate in software architecture reviews, code reviews, requirements analysis, and technical documentation., Candidates with experience in the following areas will be strongly preferred: * Automotive Battery Management Systems (BMS) for EV/HEV/PHEV applications. * Lithium-ion battery architectures and battery pack management. * Cell voltage, current, and temperature monitoring. * SOC, SOH, and SOP algorithms. * Cell monitoring and balancing. * Contactor and pre-charge control. * High-voltage safety and isolation monitoring. * Battery thermal protection and management. * Over-voltage, under-voltage, over-current, and short-circuit protection. * Battery charging/discharging management. * BMS diagnostics and fault management.