Embedded Software Development Engineer focusing on developing drivers and middleware in Linux OS. Candidate will be responsible to develop and validate functionality in a complex system level environment. Key responsibilities include:
- End-to-end development responsibility – Designs, develops, debugs & tests on the target system. Primary development happens in Linux.
- Adaptable to work across both low level drivers like DMA, I2C etc and middleware logical layers. Able to troubleshoot Linux apps and drivers issue.
- On need basis, should be ready to develop host side software in Linux/Windows as per project needs.
- High involvement in system topics like memory configuration, resource handling, system initialization, Virtualization.
- Contributes intensively to silicon bring up camps through technical contributions to prove successful execution of module and support various system tracks.
- Manage various stake holders on deliverable to ensure high quality and timely delivery
Candidate should have a Bachelors or Masters degree in Electronics or Computer Science Engineering with exposure to embedded system development.
- Knowledge in Linux Kernel, driver and application development.
- Experience with embedded development environment such as git, Linux host.
- Knows to troubleshoot various kernel issues with the help of gdb server or host based debugger.
- Scripting knowledge in Perl, Python or shell scripts.
- Exposure to build script and infrastructure. Understanding of Yocto build system would be a plus.
- Knowledge in IO and connectivity drivers like PCIe, Ethernet, USB will be a plus.