Q

Embedded Linux & Firmware Developer (Staff/Sr Staff) - Custom CPU

Qualcomm · Bengaluru, Karnataka, India

full_timePosted 2 days ago
Apply now →

Job description

General Summary: Qualcomms Custom CPU Post-Silicon team is seeking an experienced **Embedded Linux and Firmware Developer** to help shape the future of high-performance computing. In this role, you will design, develop, and maintain **bare-metal firmware** and **Linux-based software stacks** for our next-generation custom CPU platforms. What Youll Work On - **Firmware Kernel Development:** Design, implement, optimize and maintain Linux kernel modules, device drivers, bootloaders, and bare-metal firmware for custom CPU-based embedded hardware and emulation platforms. - **Board Support Packages (BSP):** Develop and maintain BSPs for new and existing hardware platforms, including bootloaders, kernel configuration and device tree - **Hardware Bring-Up:** Collaborate with hardware engineers to enable software stack on silicon and emulation platforms, debug hardware-software interactions, and ensure seamless integration. - **System Optimization:** Analyze and resolve issues related to system performance, memory usage, power consumption, and reliability. - **Debug Troubleshoot:** Diagnose complex technical issues across embedded Linux OS, drivers, and high-level operating systems (Ubuntu, Android, Yocto). - **Open-Source Strategy:** Provide architectural guidance and establish processes for open-source software delivery, including CI/CD pipelines and testing frameworks. - **Continuous Innovation:** Stay current with Linux development trends and emerging open-source technologies. - **Documentation:** Create clear technical documentation for designs, code, and test procedures. - **Cross-Functional Collaboration:** Work closely with hardware, software, and product teams to define requirements and deliver high-quality integrated solutions. Minimum Qualifications: Bachelor's degree in Computer Science, Electrical/Electronics Engineering, Engineering, or related field and 3+ years of Hardware Engineering or related work experience. OR Master's degree in Computer Science, Electrical/Electronics Engineering, Engineering, or related field and 2+ years of Hardware Engineering or related work experience. OR PhD in Computer Science, Electrical/Electronics Engineering, Engineering, or related field and 1+ year of Hardware Engineering or related work experience. What You Bring **Education:** Bachelors or Masters degree in Computer Science, Electrical Engineering, or related field. **Experience:** Strong (10+ years) in embedded bare-metal and Linux development. **Technical Expertise:** - Strong proficiency in **C/C++** for embedded systems. - Experience with **Python**, shell scripting, CMake, and embedded toolchains. - Solid understanding of **ARM SoC/CPU architecture**. - Deep knowledge of Linux internals (drivers, kernel modules, device tree, scheduler, DVFS, power management). - Experience with embedded Linux distributions and build systems (Yocto, Android, Ubuntu). - Hands-on experience with debugging tools (GDB, JTAG, oscilloscopes). - Ability to interpret hardware schematics and datasheets. - Knowledge of hardware interfaces (I2C, SPI, UART, USB, Ethernet, CAN, GPIO). - Experience with Git, GitHub/GitLab, CI/CD, Docker. - Strong technical documentation skills. Nice to Have - Experience with Linux kernel upstream process. - Chip/SoC bring-up on silicon, emulation, and simulation platforms. - ARMv8/ARMv9 architecture and ARM assembly language expertise. - Exposure to RISC-V architecture. - Familiarity with open-source bootloaders and firmware (UEFI EDK2, coreboot, U-Boot, LK, TF-A, Zephyr RTOS).