Job Description
<p><p><b>About the Role : </b></p><p><br/></p><p>Lead and own platform-level Linux development for complex SoCscovering low-level drivers, board bring-up, performance/power optimization, and security.
Youll mentor a small team, collaborate with silicon, firmware, and validation groups, and ship production-grade code across pre-silicon and post-silicon phases.<br/><br/><b>Key Responsibilities</b><br/><br/>- Driver Ownership : Design, develop, and upstream/maintain Linux kernel drivers for Ethernet, USB, IC, SPI, UART, and related subsystems.<br/><br/>- Board Bring-Up : Own boot flow, device tree, and BSP integration; debug with JTAG/LA/oscilloscope; support secure boot and interface bring-up.<br/><br/>- Platform Software : Deliver end-to-end platform solutions across multi-core architectures, clock/power domains, and PM frameworks (suspend/resume, DVFS).<br/><br/>- Pre- & Post-Silicon : Enable features on FPGA/emulators (pre-silicon) and take to silicon/EVB with validation and production readiness (post-silicon).</p><p><br/></p><p>- RTOS Exposure : Interface with FreeRTOS components and bare-metal firmware where required.<br/><br/>- Security & Interfaces : Implement and review interface concepts, sandboxing, access control, and secure update pipelines.<br/><br/>- Mentorship : Guide junior driver developers with code reviews, design reviews, and debug best practices.<br/><br/>- Cross-Functional : Partner with silicon design, verification, QA, and product teams to plan releases and resolve system issues.<br/><br/><b>Must-Have Qualifications : </b></p><p><br/></p><p>- 10 - 14 years in Linux kernel / device driver development for embedded/SoC platforms.<br/><br/>- Deep knowledge of kernel subsystems (net/USB/tty/spi/i2c), Device Tree, regmap, interrupt/DMA handling, memory management, and concurrency.</p><p><br/></p><p>- Hands-on with multi-core bring-up, clock/power domain control, and power management frameworks.<br/><br/>- Strong debug skills : crash dumps, ftrace/perf, JTAG, logic analyzers, oscilloscopes.<br/><br/>- Build systems/toolchains : Yocto/Buildroot, cross-gcc/clang, make/Kconfig; version control (Git).<br/><br/>- Experience across pre-silicon (FPGA/emulation) and post-silicon validation cycles.<br/><br/>- Solid C programming; working knowledge of Bash/Python for tooling/automation.<br/><br/>- Bachelors/Masters in ECE/EE/CS or equivalent.<br/><br/><b>Good to Have : </b></p><p><br/></p><p>- U-Boot/bootloaders, secure boot/TrustZone, OTA/firmware update pipelines.<br/><br/>- High-performance networking (TSN, QoS), USB compliance, or PCIe fundamentals.<br/><br/>- CI/CD (GitLab/Gerrit/Jenkins), static analysis, sanitizers, and coding standards (MISRA when applicable).<br/><br/>- Exposure to virtualization/containers on embedded Linux.<br/><br/><b>What Success Looks Like (90 Days) : </b></p><p><br/></p><p>- Week 23 : Environment ready; first driver builds/DT changes merged to integration branch.<br/><br/>- Day 45 : Stable bring-up of at least one peripheral (e.g., USB or Ethernet) with validated throughput/latency.<br/><br/>- Day 90 : Power/performance optimizations landed; junior devs operating with your review cadence.<br/><br/><b>Interview Process : </b></p><p><br/></p><p>- Tech Screen : Kernel/driver fundamentals, debugging scenarios.<br/><br/>- System Round : Board bring-up, power/clock domains, multi-core case studies.<br/><br/>- Practical/Code Review : Driver patch or log-based deep dive.<br/><br/>- Leadership Fit : Mentoring approach, stakeholder collaboration.</p><br/></p> (ref:hirist.tech)