Job Opportunity - Embedded Software Engineer - Automotive/ BSP/RTOS
Location : Dearborn, MI
Client : LTTS
Job Summar
yWe are seeking a highly skilled Embedded Software Engineer to design, develop, integrate, and debug embedded software for distributed, safety-critical systems involving multiple microcontrollers and scalable computing platforms. The ideal candidate will have strong expertise in C/C++, embedded software, BSP and device-driver development, RTOS/bare-metal programming, AUTOSAR, communication protocols, and low-level system debugging
.The engineer will work closely with hardware, validation, verification, and external engineering teams to develop reliable embedded solutions, perform bench and HIL validation, optimize system performance, and support production releases while ensuring compliance with MISRA, ASPICE, and ISO 26262 standards
Key Responsibilitie
- sDesign, develop, integrate, and maintain embedded software for distributed systems involving multiple microcontrollers
- .Develop low-level software including Board Support Packages (BSP), device drivers, memory/flash drivers, and hardware abstraction components
- .Develop and integrate real-time communication interfaces and protocols including UART, SPI, I2C, IPC, CAN/CAN-FD, and Ethernet
- .Develop software for RTOS and bare-metal environments, including FreeRTOS and SafeRTOS
- .Develop and integrate AUTOSAR BSW, RTE, and SWC components using relevant DaVinci tools
- .Work with Linux and QNX embedded platforms and support low-level software integration
- .Implement and debug UDS (ISO 14229) and other automotive communication protocols
- .Analyze and resolve complex low-level system issues across hardware, BSP, drivers, middleware, RTOS, and application layers
- .Perform CPU, memory, boot-time, runtime, and power optimization for embedded platforms
- .Work with DMA, multicore processors, shared memory, synchronization, and inter-process communication concepts
- .Develop and maintain flash and memory management functionality, including wear leveling, garbage collection, and page-swap mechanisms
- .Perform unit testing, integration testing, and test automation using Python scripting
- .Utilize GTest and Parasoft for software verification and unit testing
- .Perform low-level debugging using Lauterbach and other embedded debugging tools
- .Support bench-level debugging, system integration, and HIL validation activities
- .Participate in defect triage, root-cause analysis, issue resolution, and software release activities
- .Ensure software development follows MISRA, ASPICE, and ISO 26262 processes and requirements
- .Maintain software design documentation, requirements traceability, architecture documentation, and other engineering artifacts
- .Collaborate with hardware engineers, V&V teams, software architects, system engineers, and external vendors
- .Support build and integration activities using Bazel and related development infrastructure
- .Track requirements, defects, and development activities using JIRA and JAMA
.Required Qualification
- sBachelor's degree in Computer Science, Electronics & Communication Engineering, Electrical Engineering, or a related field
- .Strong professional experience in embedded software development
- .Advanced programming skills in C and C++
- .Experience developing software for microcontroller-based and distributed embedded systems
- .Hands-on experience with BSP, device drivers, memory drivers, and low-level embedded software
- .Experience with RTOS and/or bare-metal development
- .Strong understanding of embedded communication protocols and interfaces
- .Experience with embedded debugging, integration, and performance optimization
- .Experience with Python scripting for testing, automation, or development support