Senior Engineer

Our Next Energy (ONE)

  • Novi, MI
  • 5 days ago

    Highlights

    Experience with battery management algorithms (SOC/SOH estimation, cell balancing, charge/discharge control, contactor sequencing, isolation/ground-fault detection, and precision current/voltage metrology) is a strong differentiator. Design and implement software from platform/base layers (bootloader, diagnostics, communication stacks) through application-level control logic, applying layered architecture to keep code portable, testable, and maintainable.

    Numbers & Facts

    LocationNovi, MI

    Description

    ESSENTIAL DUTIES AND RESPONSIBILITIES:

    • Develop drivers, hardware abstraction, and I/O handling for BMS functions such as cell monitoring/balancing, contactor control, isolation detection, and metrology (current, voltage, temperature)
    • Design and implement software from platform/base layers (bootloader, diagnostics, communication stacks) through application-level control logic, applying layered architecture to keep code portable, testable, and maintainable
    • Verify and validate software through structured testing across functional behavior, performance, robustness, safety, compliance, and security
    • Follow defined lifecycle processes and maintain traceability between engineering phases and artifacts to ensure quality and compliance
    • Establish and maintain comprehensive documentation of software implementation
    • Collaborate with internal stakeholders and customers to execute ONEs BMS strategy
    • Root-cause and resolve issues, driving continuous refinement
    • Build subject-matter expertise in BMS topics and contribute to technical reviews
    • Work within an agile, DevOps-oriented team focused on continuous delivery and improvement
    • Perform other duties as assigned by management

    QUALIFICATIONS:

    • B.S. in Electrical, Computer, or Aerospace Engineering, Software Engineering, Computer Science, or a related field, plus relevant technical experience (M.S. preferred)
    • In-depth embedded software experience for automotive or industrial applications, spanning driver-level to application-level software
    • Proficient in C programming of embedded systems
    • Experience with communication protocols such as CAN, Ethernet, Modbus, SPI, and I2C
    • Experience with battery management algorithms (SOC/SOH estimation, cell balancing, charge/discharge control, contactor sequencing, isolation/ground-fault detection, and precision current/voltage metrology) is a strong differentiator
    • Experience with automotive/industrial microcontrollers such as Infineon AURIX (TriCore) or NXP-based devices preferred
    • Hands-on experience debugging embedded software running on target hardware using oscilloscopes, logic analyzers, in-circuit debuggers/emulators, and CAN instrumentation, measurement, and calibration equipment
    • Experience translating requirements into algorithm design and production-grade software, including software verification and validation
    • Experience with static analysis and code-quality tooling to enforce safe, portable embedded coding practices (e.g., MISRA-C compliance checking)
    • Experience with software development processes and tools, including lifecycle/change management systems
    • Familiar with source and configuration management systems (e.g., version control) and CI/CD pipelines for embedded software
    • Preferred: experience developing embedded controls compliant with ISO 26262, IEC 61508, and/or ISO 60730 standards
    • Familiarity with diagnostic software concepts such as fault management and UDS/ISO-TP
    • Skilled at troubleshooting embedded functional and diagnostic issues in vehicle applications, driving solutions and validating corrective/preventive actions

    Similar Jobs

    See more jobs