Lead Software Architect
Farmington Hills, MI
Summary of the Lead Software Architect job:
Lead level Software Architect is required to design the ECU Basic Software and map software functionality for one of our clients in Michigan. This client is a market leader in developing next generation vehicle technologies for powertrain, hybrid, stability controls, and other related systems. In this position you will be responsible for defining hardware/software interface and delivering software architecture specifications. In this position basic Software emphasis is on low level driver software for powertrain control modules, including engine control modules (ECM), transmission control modules (TCM), and hybrid power inverter modules.
Responsibilities of the Lead Software Architect:
- Understand the customer's requirements and design the software solutions accordingly
- Parse customer requirements and develop a requirements traceability matrix
- Ensure that traceability is maintained by collaborating in design, code, and test reviews.
- Decompose requirements into software components, define the component interfaces, and deliver software architecture specifications to the lead software designers
- Design software architecture specifications with UML notation using diagrams such as component, class, sequence, activity and state machine etc.
- Define hardware/software interface in terms of microcontroller pin assignments, mixed signal processing algorithms, signal scaling/resolution/timing, and diagnostic fault condition algorithms.
- Supplemental notation for real-time performance requirements
- Work on safety and security goals by collaborating with functional safety and cybersecurity engineers.
- Define microcontroller memory map by working with the customers
Qualifications of the Lead Software Architect:
- BS in EE/CE or related degree
- 7+ years of experience in software programming languages such as assembly, C or other high level languages in an Automotive field
- Knowledge of automotive component and vehicle test procedures, including environmental and EMI/EMC testing and automotive development process.
- Must be familiar with low level drivers such as ADC, PWM, GPIO, timer modules, SPI, SCI, LIN, CAN, SENT, DMA, external bus interfaces, memory management units, ECC, flash memory, etc.
- Must be familiar with real-time operating systems (RTOS) functionality/configuration, interrupt service routines, exception handlers, task scheduling, and multi-core CPU operation.
- Knowledge of microcontroller peripherals, serial communication, and standard powertrain devices such as power supply ICs, low-side drivers, high-side drivers, CAN transceivers, etc.
- Experience in electronic control systems and software specifications, documentation and validation procedures
- Experience with Freescale, Renesas, and Infineon Aurix microprocessors
- Working knowledge of debuggers and emulation tools suchas CAN and other serial communication interfaces
- Experience with RTOS kernels and ETAS calibration tools will be a plus
- Experience in tracking and reporting design changes
- Must be able to travel for to Europe, US, Japan and Other customer and Manufacturing sites during certain program phases
- Experience with transfer case control module (TCCM) and active suspension controllers are also a plus.
Compensation of the Lead Software Architect:
Salary Range: $50-65/hr W2 (more for corp-to-corp)
Location: Farmington, MI
Travel: Frequent domestic and/or international traveling may require
Relocation Assistance: Subject to review
Visa Sponsorship: H1B transfers only. NO OPT will be considered
Knowledge of the following areas will be helpful: Software, Architect, ECU, Map, BSW, "real time operating system", RTOS, microcontroller, powertrain, "power supply", IC, "low-side drivers", "high-side drivers", CAN, transceivers, "engine control modules", ECM, "transmission control modules", TCM, "hybrid power inverter modules", "transfer case control module", TCCM, "active suspension controllers", requirement, interface, components, "traceability matrix", design, code, UML, notation, diagrams, "mixed signal", "signal scaling", ADC, PWM, GPIO, "timer modules", SPI, SCI, LIN, CAN, SENT, DMA, "external bus interfaces", "memory management units", ECC, "flash memory""multi core CPU"programming, language, assembly, "vehicle test procedures", EMI, EMC