Qualifications
· BTech / MTech degree (Computer Science, Computer/Electrical Engineering, or equivalent technical degree)
· Solid understanding of software development methodology
· Minimum 8–15 years’ experience in developing low‑level embedded OS capabilities such as device drivers, BSPs, and board bring‑up
· Experience developing software stacks in C/C++ and working with BSP, HAL, and bootloader development
· Strong understanding of the USB module and stack, including debugging internals
· Understanding of the CAN stack and integration
· Bluetooth knowledge is an added advantage
· Strong understanding of embedded systems and related HW/SW components (Processor, Memory, Peripherals, OS, Device Drivers, etc.)
· Experience with software and drivers for peripherals, controllers, and complex SoC systems for ARM/Intel/PowerPC
· Strong experience with HW interfaces for ARM 64‑bit or Intel Architecture processors, including assembly programming, debugging, and troubleshooting
· Deep understanding of CPU, MMU, Cache, Interrupts, DMA, ADC/DAC, EEPROM, PWM, Watchdog Timers, and other embedded peripherals
· Experience programming PIC, GIC, UART, Timer, Nexus Bus, Simple Bus, Memory Controller, RTC, etc.
· Proficient in Hypervisors and Embedded Virtualization
· Knowledge of RTOS (QNX, VxWorks, FreeRTOS, Linux, etc.) is a plus