Logo
Qualcomm

Senior Software Engineer - Hypervisor

Qualcomm, San Diego, California, United States, 92189

Save Job

Join to apply for the

Senior Software Engineer - Hypervisor

role at

Qualcomm

1 day ago Be among the first 25 applicants

Company:

Qualcomm Technologies, Inc.

Job Area:

Engineering Group, Software Engineering

General Summary:

Qualcomm is looking for talented and enthusiastic engineers with strong interests in OS, kernel and computer architecture. The Qualcomm Hypervisor team is world‑leading, enabling virtualization across multiple chipset products for mobile, automotive, compute and IoT. The team is responsible for the hypervisor software layers that play a key role in platform security and performance. Qualcomm is industry leading in its adoption of virtualization technology in its Snapdragon mobile products. The team has built hypervisor and SMMU expertise and continues to develop innovative features, enhancements, and use‑cases. As a software engineer at Qualcomm, you will help develop SMMU, hypervisor and related software for the latest cutting‑edge application processors, which are embedded in a wide range of chipset products and used by many OEMs in millions of devices. The role will include interfacing with large software stacks such as Bootloaders, Linux and TrustZone – which provides the opportunity to interact with teams around the world.

Your Responsibilities Include

Design, development and integration of SoC firmware features, diagnostics and test capabilities for QCT boot platforms.

Strong coordination and collaboration across a wide range of technical areas to include software, hardware, ASIC, integration, architecture, and emulation teams.

Paying attention to details during all phases of firmware design, development, integration, testing and release – Work with Emulation, HW design teams, as necessary, in verifying and debugging firmware, driver and resolving platform issues.

Efficient and secure coding (cognizant of not exposing security exploits) plus driving code review of firmware logic updates with all required stakeholders.

On‑time execution of defined tasks and deliverables, driving dependencies with other teams to closure.

Triage of software issues, defect investigation and problem resolution.

Technical documentation including APIs, manuals, and user guides.

Skills That May Be Relevant

Strong understanding or experience with C.

Understanding of computer architecture, operating systems and kernels – Linux, kernel, bootloader or OS development experience.

ARM CPU architecture knowledge; IOMMU and ARM SMMU knowledge; hypervisors and virtualization.

Experience with multi‑processing or multi‑threading, concurrency, and synchronization; writing device drivers and interfacing hardware.

Experience with secure coding.

Use of debugging tools such as GDB, Lauterbach Trace32 and understanding assembly; real‑time OS; toolchains and systems libraries.

Python, shell scripting and Linux‑based development environment.

Good communication and presentation skills.

Test development and test automation.

Contributing to open‑source projects.

Demonstrated independent software design, good analytic and problem‑solving skills. Any automotive and functional safety experience may also be relevant.

Minimum Qualifications

Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 2+ years of Software Engineering or related work experience.

Master's degree in Engineering, Information Systems, Computer Science, or related field and 1+ year of Software Engineering or related work experience.

PhD in Engineering, Information Systems, Computer Science, or related field.

2+ years of academic or work experience with a programming language such as C, C++, Java, Python, etc.

Preferred Qualifications

Master's Degree in Computer Science, Engineering, or related field.

4+ years of Software Engineering experience.

1+ year of work experience with Git, Perforce, or other source code management systems.

Strong understanding or experience with C.

Understanding of computer architecture, operating systems and kernels – Linux, kernel, bootloader or OS development experience.

ARM CPU architecture knowledge; IOMMU and ARM SMMU knowledge; hypervisors and virtualization.

Experience with multi‑processing or multi‑threading, concurrency, and synchronization; writing device drivers and interfacing hardware.

Experience with secure coding.

Use of debugging tools such as GDB, Lauterbach Trace32 and understanding assembly; real‑time OS; toolchains and systems libraries.

Python, shell scripting and Linux‑based development environment.

Good communication and presentation skills.

Test development and test automation.

Contributing to open‑source projects.

Demonstrated independent software design, good analytic and problem‑solving skills. Any automotive and functional safety experience may also be relevant.

EEO Employer Statement Qualcomm is an equal opportunity employer. If you are an individual with a disability and need an accommodation during the application/hiring process, rest assured that Qualcomm is committed to providing an accessible process.

Pay Range and Other Compensation & Benefits $111,300.00 – $166,900.00

In addition to base salary, Qualcomm offers a competitive annual discretionary bonus program and the opportunity for annual RSU grants.

For more information about this role, please contact Qualcomm Careers.

#J-18808-Ljbffr