3–6 years of hands-on experience in embedded systems software development
Solid skills in C/C++ programming, with basic familiarity in assembly
Good understanding of RTOS concepts (task scheduling, ISRs, semaphores, etc.)
Experience debugging complex multicore systems, experience with debugging tools (OpenOCD, Segger J-Link, Lauterbach)
Experience porting or developing on FreeRTOS, Zephyr, AUTOSAR OS, or similar platforms
Familiarity with bare-metal development, memory-mapped IO, and driver development
Experience in bring-up and debugging on real silicon or FPGA platforms
Knowledge of automotive interfaces and protocols: CAN, LIN, SPI, I2C, UART
Practical exposure to test automation, scripting (Python/bash), and version control (git)