Key Responsibilities
- Development (design, implement, test and debug) of core and/or application specific software requirements for automotive embedded electronic module serial production projects
- Develop software in compliance with a formal ASPICE/CMMi based Global Product Engineering Process (GPEP).
- Support rest of the functional disciplines with all aspects related to software architecture
- Perform work assignments as a highly competent software engineer, requiring independent design, implementation, and testing of the software components
- Work assignments primarily involve intermediate through advanced level work, moving toward complete technical competency and mastery of the field.
- Define, document, and communicate the software architecture
- Ensure all software project team is using it correctly
- Make sure the software and system architectures are in synchronization
- Make sure that the architecture is not only the right one for operations, but also for deployment and sustainment and only as complex as it needs to be in order to meet the system requirements and system architecture.
- Resolve disputes and make trade-offs and resolve technical problems
- Provide high level guidance and direction on project work, making sure that new application projects fit in with an overall software architecture and strategic vision
Key Qualifications/Requirements
- Bachelor’s degree in Computer Engineering / Software Engineering / Computer Science or equivalent
- Master’s highly preferred
- 4-8 years’ relevant experience regarding the Responsibility / Activities (listed above) for automotive electronics serial development projects (mandatory).
- Real-time embedded software development experience using C/C++ for 32/64-bit multicore SoC/microcontrollers.
- Experience with OS/BSP, device driver development like Flash, EEPROM, LIN, CANFD, Ethernet, SPI, etc.
- Experience with design, implement, test and debug of embedded software for automotive ECUs.
- Experience of development and debugging in embedded environments such Autosar, QNX, integrity OS, or embedded Linux etc.
- Experience with capturing and analyzing the data from different communication interfaces like CAN, LIN, I2C, SPI, UART etc
- Experience with developing software in compliance with a formal ASPICE based Global Product Engineering Process (GPEP).
- Hardware/Software (HW/SW) integration, Software configuration management, Full software life-cycle development
- ISO26262 Functional safety software development experience
- Ability to successfully contribute to multi-disciplined teams.
- Additional Information
- Competent in the core frameworks used and must have a strong knowledge of the problem domain that their systems are meant to provide solutions for.
- Academic or practical experience is definition and design of software architectures for automotive projects.
- Ambassador between software engineering teams and system architects, and product lines
- Experience using the following tools or related tools:
- Requirements management (PTC/Reqtify),
- Architect & Design (Enterprise Architect),
- Static Analysis (QAC), Debuggers,
- Unit Testing (VectorCAST),
- Configuration Management (PTC Integrity/Git),
- Autosar/QNX/Linux Development environment
- Knowledge of MS Office package (especially Excel)
- Knowledge of analysis and engineering tools such as version control/configuration management, UML tools, static code check tools
- Working knowledge of CAN and LIN based tools such as CANalyzer, CANoe, CANape, neoVI
Job Category: Embedded Engineer
Job Type: Full Time
Job Location: Michigan
Domain: Automotive