Engineer - Embedded linux
Qualcomm
Job Summary
As a leading technology innovator, Qualcomm pushes the boundaries of what's possible to enable next-generation experiences and drives digital transformation to help create a smarter, connected future for all. As a Qualcomm Software Engineer, you will design, develop, create, modify, and validate embedded and cloud edge software, applications, and/or specialized utility programs that launch cutting-edge, world class products that meet and exceed customer needs. Core responsibilities include designing, developing, and maintaining embedded software for automotive Linux platforms, integrating kernel drivers, contributing to safety-certified software components, and conducting security assessments.
Must Have
- Design, develop, and maintain embedded software for automotive Linux platforms (kernel modules, user space components like Yocto, Ubuntu, RHIVOS).
- Develop and integrate Linux kernel drivers, including support for virtualization (pKVM), error handling (EDAC), and secure device provisioning.
- Contribute to safety-certified software components (ASIL B or higher) and compliance with ISO 26262 standards.
- Conduct threat modeling, penetration testing, and vulnerability assessments for embedded Linux systems.
- Proficiency in C for embedded systems.
- Deep understanding of Linux kernel internals, IOMMU, and virtio.
- Experience with secure coding practices, cryptography, key management, and disk encryption.
- Hands-on experience with debugging tools: gdb, Kgdb, JTAG, Lauterbach.
- Exposure to Hypervisor and virtualization technologies (UEFI, ABL, KVM).
Good to Have
- Proficiency in C++.
- Master's degree in Engineering, Information Systems, Computer Science, or related field.
Perks & Benefits
- Health: Qualcomm offers a world-class health benefit option providing world-class coverage to employees and their eligible dependents.
- Wealth: Our programs are designed to help employees build and prepare for a financially secure future.
- Self: Our self and family resources help you build emotional/mental strength and resilience, as well as define your purpose — in life and at work.
- Wellbeing: Qualcomm’s wellbeing programs and resources offer support to help employees Live+Well and Work+Well, so they can unlock their full potential at home, at work, and everywhere between.
Job Description
Job Description
General Summary:
As a leading technology innovator, Qualcomm pushes the boundaries of what's possible to enable next-generation experiences and drives digital transformation to help create a smarter, connected future for all. As a Qualcomm Software Engineer, you will design, develop, create, modify, and validate embedded and cloud edge software, applications, and/or specialized utility programs that launch cutting-edge, world class products that meet and exceed customer needs. Qualcomm Software Engineers collaborate with systems, hardware, architecture, test engineers, and other teams to design system-level software solutions and obtain information on performance requirements and interfaces.
Minimum Qualifications:
• Bachelor's degree in Engineering, Information Systems, Computer Science, or related field.
Preferred Qualifications:
• Bachelors/master's degree in engineering, Information Systems, Computer Science or related field.
Core Responsibilities
• Embedded Linux Development: Design, develop, and maintain embedded software for automotive platforms, focusing on Linux-based systems including kernel modules and user space components (Yocto, Ubuntu, RHIVOS).
• Kernel & Driver Integration: Develop and integrate Linux kernel drivers, including support for virtualization (pKVM etc), error handling (EDAC), and secure device provisioning.
• Safety-Critical Systems: Contribute to the development of safety-certified software components (ASIL B or higher), including Safe Architecture Extensions and compliance with ISO 26262 standards.
• Security Assessments: Conduct threat modeling, penetration testing, and vulnerability assessments for embedded Linux systems
Principal Duties and Responsibilities:
Required Skills & Expertise:
· Proficiency in C for embedded systems and C++ added advantage
· Deep understanding of Linux kernel internals, IOMMU, and virtio
· Experience with secure coding practices and understanding of cryptography, , key management and Diskencryption
· Hands-on experience with debugging tools: gdb. Kgdb JTAG, Lauterbach, etc.
· Exposure to Hypervisor and virtualization technologies (e.g., UEFI, ABL, KVM ).
Level of Responsibility:
• Works under supervision.
• Decision-making affects direct area of work and/or work group.
• Requires verbal and written communication skills to convey basic, routine factual information.
• Tasks require multiple steps which can be performed in various orders; some planning, problem-solving, and prioritization must occur to complete the tasks effectively.