Software Engineer
Summary
Develops embedded C software for electronic control units in BWI Group's automotive braking and suspension systems: writing and unit-testing code, integrating CAN/LIN communication and model-generated code, debugging on target hardware and vehicles, and maintaining requirements documentation under automotive processes (AUTOSAR, ISO 26262).
Position Summary
Essential Duties and Responsibilities
- Design, code, and unit test embedded C software for automotive ECUs.
- Develop and integrate software components, drivers, and communication interfaces (CAN, LIN).
- Integrate model-generated code from algorithm teams.
- Participate in code reviews and static analysis.
- Debug software on target hardware, benches, and vehicles.
- Maintain software requirements, design documentation, and traceability.
- Support software releases, defect fixes, and customer issues.
Qualifications
- Bachelor's degree in Computer, Electrical, or Software Engineering or a related field.
- 2+ years of embedded C software development experience.
- Experience with debugging tools and version control (e.g., Git).
- Understanding of microcontrollers and real-time systems.
- Experience with AUTOSAR.
- Knowledge of Automotive SPICE, ISO 26262, and MISRA C.
- Experience with Vector tools and automotive diagnostics (UDS).
Key Competencies
- Technical problem solving
- Code quality and discipline
- Collaboration
- Attention to detail
- Continuous learning
Travel
Work Environment and Physical Requirements
- Work is performed primarily in an office and engineering lab environment, with prolonged periods of computer use.
- Periodic time in prototype labs, test facilities, manufacturing areas, and vehicles, including ride-alongs and proving-ground or winter/summer test events.
- Must follow site safety rules and wear required personal protective equipment (PPE) in lab, test, and plant areas.
- Occasionally lift or move items up to 25 lbs.