Specify requirements, design, implement, and test both bare metal and RTOS low-level software for creating a scalable platform
Develop multicore, time / safety critical software architectures
Work with/resolve ambiguity in requirements/specifications/designs
Create elegant, efficient real-time software components and interfaces
Develop software component testing methodologies and implementations to ensure maturity/stability/release readiness
Work with hardware and debuggers at a bench and HIL level to verify software operation
Define system-level power / compute / communication requirements and implement solutions that allow different applications to achieve different combinations of configurations
Profile power / CPU / bus usage and identify opportunities for optimization on the submodule as well as system level
Develop comprehensive test plans and perform thorough testing to validate firmware functionality, stability, and performance under various conditions, including low power modes
Perform initial development on each ECU and develop common libraries and services used across all ECUs
Requirements
Bachelor’s degree in Computer Science or Computer Engineering
8+ years of relevant experience in embedded software development using C
Experience with Automotive MCU’s from NXP, TI, STM
Experience with RTOS’s such as u-velOSity, FreeRTOS, safeRTOS
Experience with bare metal and RTOS software development including board bring-up
Experience with JIRA and Confluence
Experience with git
Experience with build systems such as make and bazel
Experience with scripting languages such as python or bash
Knowledge of electrical engineering fundamentals including circuit analysis and design
Excellent communication skills
(Preferred) Experience in driver development and RTOS integration
(Preferred) Experience with fundamental hardware components on PCB and their analysis tools
(Preferred) Experience with ISO26262 development
(Preferred) Experience with Automotive technologies such as CAN, LIN, UDS, DoIP
(Preferred) Experience with Automotive testing tools such as Vector Canoe
(Preferred) Knowledge of MISRA
(Preferred) Knowledge of commercial compilers and embedded debugging tools such as GHS and Keil
Candidates must be legally authorized to work in the United States; visa sponsorship is available