yoinka

Senior Software Engineer — RISC-V Instruction Set Simulator (Simulator Engineer)

Qualcomm

Cupertino, California, United States of AmericaSeniorH-1B sponsor company
Sign in to applyVerified 1h ago
Location
Cupertino, California, United States of America
Work model
On-Site
Level
Senior
H-1B history
22 approvals (FY2023)
Posted
Sep 1, 2026

Skills

LinuxPythonREST

About this role

Company: Qualcomm Technologies, Inc. Job Area: Engineering Group, Engineering Group > CPU Engineering General Summary:

About the Role

We are building a high-performance, production-grade RISC-V Instruction Set Simulator (ISS) that serves as the golden reference model for a family of next-generation 64-bit RISC-V processors. The ISS is a key component of our verification flow: it drives co-simulation against RTL, powers random test generation, and gives software teams a fast, accurate platform to develop and debug pre-silicon firmware. The work is at the intersection of computer architecture, systems software, and verification engineering — writing the kind of C++ that has to be both correct to the bit and fast enough to run long-running benchmarks and boot Linux.

What You'll Work On

Implementing the ISA: Translate RISC-V specification chapters into working C++ code. We cover a wide range of extensions: integer, floating-point, vector, bit manipulation, security features, interrupt handling, and more. Simulation correctness: Help maintain the fetch/decode/execute engine, memory protection, virtual memory, and privilege-level logic that make the simulator a trustworthy reference. Co-simulation: Work on the harness that runs the ISS alongside RTL and flags any differences, one instruction at a time. Testing: Write targeted unit tests that exercise individual features and compare against expected results derived from the RISC-V spec. Developer tooling: Contribute to and maintain a large collection of simulator extensions and utilities that help the user community be more productive.

What We're Looking For

Solid C++ skills and comfort reading unfamiliar codebases. Comfortable with basic processor architecture, including pipelines, memory, privilege levels, and interrupts. Strong attention to detail; this work is spec-driven and correctness matters. Willingness to read a specification document and turn it into tested code. Some exposure to low-level or systems programming, such as embedded systems, operating systems, compilers, or hardware description.

Nice to Have

Experience with RISC-V, x86, or ARM architecture. Familiarity with simulators or emulators such as QEMU, Spike, gem5, or similar tools. Experience with GDB, ELF binaries, or bare-metal bring-up. Background in hardware verification or RTL co-simulation. Knowledge of Linux internals. Python 3+ experience. Minimum Qualifications: • Bachelor's degree in Electrical Engineering, Computer Engineering, Computer Science, or related field and 4+ years of Hardware Engineering, Software Engineering, Electrical Engineering, Systems Engineering, or related work experience. OR Master's degree in Electrical Engineering, Computer Engineering, Computer Science, or related field and 3+ years of Hardware Engineering, Software Engineering, Electrical Engineering, Systems Engineering, or related work experience. OR PhD in Electrical Engineering, Computer Engineering, Computer Science, or related field and 2+ years of Hardware Engineering, Software Engineering, Electrical Engineering, Systems Engineering, or related work experience. 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. You may e-mail  disability-accomodations@qualcomm.com  or call Qualcomm's toll-free number found  here . Upon request, Qualcomm will provide reasonable accommodations to support individuals with disabilities to be able participate in the hiring process. Qualcomm is also committed to making our workplace accessible for individuals with disabilities. (Keep in mind that this email address is used to provide reasonable accommodations for individuals with disabilities. We will not respond here to requests for updates on applications or resume inquiries). To all Staffing and Recruiting Agencies :   Our

Listing verified 1h ago. Applications go through the company's official careers site.

← Back to Yoinka

Senior Software Engineer — RISC-V Instruction Set Simulator (Simulator Engineer) at Qualcomm, Cupertino, California, United States of America | Yoinka