- Hands-on experience in C and C++ programming language.
- Excellent in programming - translating a high level problem to an implementation proposal and the final implementation.
- Design, Implementation and debugging of Linux device drivers.
- Excellent understanding and hands on experience in programming peripheral devices and controllers like SPI, I2C, UART, Timers, interrupt controller, ADC etc.
- Worked on low-level device drivers for above controllers.
- Knowledge of processor architectures for ARM or RISC-V.
Good to Have Technical Skills :
- Exposure to SystemC / TLM concepts.
- Exposure to programming complex devices like Ethernet controllers, PCIe controllers, etc.
- Experience working on hardware simulators - e.g., Qemu, Synopsys Virtualizer.
- BSP (Board Support Package) bring-up experience including boat loader and Uboot.
Behavioural/ Non Technical :
- Self-managed and ability to learn and adapt.
- Eager to take on new challenging work.
- Strong analytical and problem-solving skills.
- Good debugging skills.
- Excellent verbal and written communication skills.