Embedded System Engineer
Job Title: Embedded System EngineerLocation: Dearborn, MI (local candidates only)Experience: 4+ YearsInterview Process:1st Round: Virtual Interview2nd Round: Face-to-Face Interview (Mandatory)Note: We are looking for local candidates only who can attend the 2nd round Face-to-Face interview in Dearborn, MI. Please submit only candidates who can attend the onsite interview.Key ResponsibilitiesDesign and develop embedded software for distributed systems involving multiple microcontrollers.Implement low-level drivers and Board Support Package (BSP) components.Develop real-time Ethernet and communication protocols (UART, SPI, IPC, I2C).Work on RTOS / bare-metal software development for scalable platforms.Perform integration, debugging, and optimization (CPU, memory, power).Analyse and resolve low-level system issues across embedded layers.Conduct unit testing, integration testing, and automation using Python scripting.Ensure compliance with MISRA, ASPICE, and ISO26262 standards.Maintain design documentation, traceability, and architecture artifacts.Collaborate with hardware teams, V&V teams, and external vendors.Provide bench-level debugging and HIL validation support.Lead/participate in triaging sessions and release activities.QualificationBachelor's degree in Computer Science / Electronics & Communication Engineering.Required SkillsC / C++ ProgrammingPython ScriptingEmbedded Software DevelopmentBSP & Device Driver DevelopmentAUTOSAR (BSW, RTE, SWC, Davinci tools)RTOS (FreeRTOS / SafeRTOS)Linux / QNX SystemsUART, SPI, I2C, IPC CommunicationCAN / CAN-FDEthernet DriversUDS Protocol (ISO 14229)DMA, Multicore & Shared Memory ConceptsLauterbach Debugging ToolGTest, Parasoft (Unit Testing)Bazel Build SystemJIRA, JAMAFlash / Memory Driver DevelopmentWear Leveling, Garbage Collection, Page SwapBoot-time & Runtime OptimizationLow-level Debugging Across Software Stack