Job Area:Engineering Group, Engineering Group > Software Engineering
General Summary: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.
Role OverviewWe are building a high-impact team at the intersection of
CPU architecture, machine learning workloads, and system-level performance optimization. This role focuses on
CPU software-hardware co-design for next-generation QMX architectures, including workload characterization, simulation, kernel optimization, and driving architectural insights for future CPU designs. The ideal candidate will work across the full stack-from ML models to low-level kernels to architectural feedback-enabling
efficient execution of ML workloads on CPU platforms.
Key Responsibilities1. ML Workload Identification & Characterization- Identify and prioritize critical ML use cases and models for CPU-centric execution (LLMs, vision, speech, recommender systems, etc.)
- Analyze workload characteristics including:Compute intensityMemory bandwidth and cache behaviorParallelism and dataflow patterns
2. Simulation & Trace Generation- Generate detailed execution traces for ML workloads using QEMU or equivalent simulators
- Develop tooling to:Capture instruction-level execution behaviorExtract performance counters and bottlenecks
- Enable accurate modeling of workload behavior for architectural exploration
3. Bottleneck Analysis & Performance Optimization- Identify system bottlenecks across:CPU pipelinesMemory hierarchyInstruction utilization
- Optimize critical hotspots through:Kernel-level tuningAlgorithmic improvementsData layout and memory optimizations
- Drive measurable improvements in workload performance
4. Software-Hardware Co-Design- Collaborate with CPU architecture and design teams to:Provide data-driven insights from real workloadsIdentify inefficiencies and propose architectural enhancements
- Influence next-generation CPU features in:Compute unitsVector/SIMD extensions (e.g., QMX)Memory subsystems
5. ML Kernel & Library Development (QMX Focus)- Design and implement highly optimized ML kernels and libraries for QMX architecture
- Develop kernels for:GEMM, convolution, attention, activation functions, etc.
- Enable integration with:Open-source ML frameworks (e.g., PyTorch, ONNX, XNNPACK, MLAS)
- Apply advanced optimizations:SIMD/vectorizationCache-aware executionParallel execution strategies
6. Benchmarking & Performance Engineering- Optimize CPU-centric ML benchmarks such as:Geekbench AIInternal benchmarking suites
- Establish performance baselines and track improvements across hardware generations
- Perform competitive analysis and performance positioning
Required Qualifications- Strong background in:Computer Architecture / Systems ProgrammingMachine Learning fundamentals
- Proficiency in:C/C++ (mandatory)
- Experience with:Performance profiling, benchmarking, and optimization
Preferred Qualifications- Experience with:QEMU or equivalent simulatorsML kernel development (GEMM, convolution, attention)
- Knowledge of:CPU architecture (pipelines, caching, SIMD/vector extensions such as NEON, SVE, QMX)
- Familiarity with:ML frameworks and inference stacks
- Experience with low-level optimization:Intrinsics, assembly, memory and cache tuning
Minimum Qualifications:• Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 8+ years of Software Engineering or related work experience.
OR
Master's degree in Engineering, Information Systems, Computer Science, or related field and 7+ years of Software Engineering or related work experience.
OR
PhD in Engineering, Information Systems, Computer Science, or related field and 6+ years of Software Engineering or related work experience.
• 4+ years of work experience with Programming Language such as C, C++, Java, Python, etc.
Pay range and Other Compensation & Benefits: $177,300.00 - $265,900.00
The above pay scale reflects the broad, minimum to maximum, pay scale for this job code for the location for which it has been posted. Even more importantly, please note that salary is only one component of total compensation at Qualcomm. We also offer a competitive annual discretionary bonus program and opportunity for annual RSU grants (employees on sales-incentive plans are not eligible for our annual bonus). In addition, our highly competitive benefits package is designed to support your success at work, at home, and at play. Your recruiter will be happy to discuss all that Qualcomm has to offer - and you can review more details about our US benefits at this link.
If you would like more information about this role, please contact Qualcomm Careers.