Qualcomm
Senior Software Engineer, Cloud Edge and Data Center Machine Learning
Qualcomm, San Diego, California, United States, 92189
Overview
Qualcomm’s Data Center Business Unit is looking for an experienced Senior Software Engineer to contribute to the design, development, and commercialization of software/firmware solutions for Cloud Edge and Data Center machine learning use cases running on premium-tier high-performance silicon. You will work closely with internal and cross-functional teams and contribute to the advancement of critical technologies such as ML acceleration, process in memory, memory management and virtualization. The candidate should have a background in embedded software development such as board support packages (BSP), device driver development, RTOS, secure boot, TrustZone technology, low-speed peripheral interfaces (I2C/SPI/UART), chipset power blocks, clock tree management, PCIe and efficient data movement using DMA. Responsibilities
Contribute to the design, development, and commercialization of software/firmware solutions for Cloud Edge and Data Center ML use cases. Collaborate with internal and cross-functional teams and advance technologies in ML acceleration, process in memory, memory management and virtualization. Minimum Qualifications
Bachelor’s degree in Engineering, Information Systems, Computer Science, or related field and 2+ years of Software Engineering or related work experience. OR Master’s degree in Engineering, Information Systems, Computer Science, or related field and 1+ year of Software Engineering or related work experience. OR PhD in Engineering, Information Systems, Computer Science, or related field. 2+ years of academic or work experience with programming languages such as C, C++, Java, Python, etc. Required Skills and Aptitudes
Proficient with development in C/C++ including debug and testing, preferably using GNU/LLVM tools, on embedded platforms using stop-mode debugging tools such as JTAG/SWD Skilled with BSP development including device driver development, board bring-up, RTOS, secure boot design & TrustZone architecture Experience with development and build tools for applications running within Embedded Linux environment Proficient with unit testing for C/C++ development Adept with RTOS fundamentals, SoC architecture (core, cache, memory, bus architecture, IOs, etc.), common hardware blocks and multi-threaded programming Experience with source code and configuration management tools such as git/Gerrit Ability to work in a structured software development environment while contributing to novel designs Willingness and flexibility to work as part of a high-caliber international/multi-site team Excellent English communication skills (written and verbal) and positive interpersonal skills Desirable Skills and Aptitudes
Familiar with ML frameworks such as PyTorch, JAX and Llama.cpp Familiar with interfaces such as PCIe, LPDDR, USB and UFS Familiar with implementing Reliability, Accessibility and Serviceability (RAS) through ECC & PCI AER fields Familiar with low-speed interfaces such as I2C, SPI, SPMI, AVSBus & PMBus Familiar working with software running on Qualcomm’s QuRT RTOS (ARM Cortex-A CPUs and Hexagon DSPs) Familiar with on-chip middleware for communication, logging and power control, including Qualcomm’s Core SW Infra (e.g., Glink, QDSS, SOC power control algorithms such as DVFS, DCVS) Experience working with microprocessor building blocks like microprocessor execution levels, interrupt controller & timers Software development and debug tools including compilers, profilers, source control systems, emulators, JTAG and serial debuggers, and logic analyzers Pay range and Other Compensation & Benefits
$111,300.00 - $166,900.00 The pay scale reflects the broad range for the location posted. Salary is one component of total compensation, which may include an annual discretionary bonus program and potential RSU grants. Qualcomm also offers a competitive benefits package. Your recruiter can discuss details about Qualcomm’s benefits. EEO and Accommodation
Qualcomm is an equal opportunity employer. If you are an individual with a disability and need an accommodation during the application/hiring process, 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 participate in the hiring process. Qualcomm is also committed to making our workplace accessible for individuals with disabilities. EEO Employer: Qualcomm is an equal opportunity employer; all qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, Veteran status, or any other protected classification.
#J-18808-Ljbffr
Qualcomm’s Data Center Business Unit is looking for an experienced Senior Software Engineer to contribute to the design, development, and commercialization of software/firmware solutions for Cloud Edge and Data Center machine learning use cases running on premium-tier high-performance silicon. You will work closely with internal and cross-functional teams and contribute to the advancement of critical technologies such as ML acceleration, process in memory, memory management and virtualization. The candidate should have a background in embedded software development such as board support packages (BSP), device driver development, RTOS, secure boot, TrustZone technology, low-speed peripheral interfaces (I2C/SPI/UART), chipset power blocks, clock tree management, PCIe and efficient data movement using DMA. Responsibilities
Contribute to the design, development, and commercialization of software/firmware solutions for Cloud Edge and Data Center ML use cases. Collaborate with internal and cross-functional teams and advance technologies in ML acceleration, process in memory, memory management and virtualization. Minimum Qualifications
Bachelor’s degree in Engineering, Information Systems, Computer Science, or related field and 2+ years of Software Engineering or related work experience. OR Master’s degree in Engineering, Information Systems, Computer Science, or related field and 1+ year of Software Engineering or related work experience. OR PhD in Engineering, Information Systems, Computer Science, or related field. 2+ years of academic or work experience with programming languages such as C, C++, Java, Python, etc. Required Skills and Aptitudes
Proficient with development in C/C++ including debug and testing, preferably using GNU/LLVM tools, on embedded platforms using stop-mode debugging tools such as JTAG/SWD Skilled with BSP development including device driver development, board bring-up, RTOS, secure boot design & TrustZone architecture Experience with development and build tools for applications running within Embedded Linux environment Proficient with unit testing for C/C++ development Adept with RTOS fundamentals, SoC architecture (core, cache, memory, bus architecture, IOs, etc.), common hardware blocks and multi-threaded programming Experience with source code and configuration management tools such as git/Gerrit Ability to work in a structured software development environment while contributing to novel designs Willingness and flexibility to work as part of a high-caliber international/multi-site team Excellent English communication skills (written and verbal) and positive interpersonal skills Desirable Skills and Aptitudes
Familiar with ML frameworks such as PyTorch, JAX and Llama.cpp Familiar with interfaces such as PCIe, LPDDR, USB and UFS Familiar with implementing Reliability, Accessibility and Serviceability (RAS) through ECC & PCI AER fields Familiar with low-speed interfaces such as I2C, SPI, SPMI, AVSBus & PMBus Familiar working with software running on Qualcomm’s QuRT RTOS (ARM Cortex-A CPUs and Hexagon DSPs) Familiar with on-chip middleware for communication, logging and power control, including Qualcomm’s Core SW Infra (e.g., Glink, QDSS, SOC power control algorithms such as DVFS, DCVS) Experience working with microprocessor building blocks like microprocessor execution levels, interrupt controller & timers Software development and debug tools including compilers, profilers, source control systems, emulators, JTAG and serial debuggers, and logic analyzers Pay range and Other Compensation & Benefits
$111,300.00 - $166,900.00 The pay scale reflects the broad range for the location posted. Salary is one component of total compensation, which may include an annual discretionary bonus program and potential RSU grants. Qualcomm also offers a competitive benefits package. Your recruiter can discuss details about Qualcomm’s benefits. EEO and Accommodation
Qualcomm is an equal opportunity employer. If you are an individual with a disability and need an accommodation during the application/hiring process, 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 participate in the hiring process. Qualcomm is also committed to making our workplace accessible for individuals with disabilities. EEO Employer: Qualcomm is an equal opportunity employer; all qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, Veteran status, or any other protected classification.
#J-18808-Ljbffr