Qualcomm Staff Engineer - Software Design/Development – Linux for Machine Learning Accelerator in Boulder, Colorado
Company:Qualcomm Technologies, Inc.
Job Area:Engineering Group, Engineering Group > Software Engineering
Qualcomm is a company of inventors that unlocked 5G ushering in an age of rapid acceleration in connectivity and new possibilities that will transform industries, create jobs, and enrich lives. But this is just the beginning. It takes inventive minds with diverse skills, backgrounds, and cultures to transform 5Gs potential into world-changing technologies and products. This is the Invention Age - and this is where you come in.
Qualcomm CR&D is looking for an experienced software engineer in the areas of Linux user-mode and Linux device drivers for Machine Learning use cases. The development target is Qualcomm high-performance inference accelerator AI 100 and related products.
An ideal candidate should be familiar with designing Linux drivers for embedded software and is familiar with developing C++ based System on a Chip (SoC) based systems
The candidate should be familiar with developing Linux Device drivers, Linux user-mode drivers, inter-process communication such as gRPC, protocol buffers, modern C++ design, system profiling, code optimization, and tool development. Responsibilities include Linux software architecture and design, development, software integration, functional and performance testing. Familiarity with development of functional simulation of SoC systems included bus subsystems, DMA, PCIe and peripherals, synchronization mechanisms such as semaphores as well as low speed peripherals would be beneficial.
Required Skills and Aptitudes:
Experience with Linux user-space development, including IOCTL interfaces, API development and multi-threaded processing.
Experience with Linux kernel driver development, kernel modules, PCIe interfaces, HWMon, sysfs and debugging techniques
Experience with real-time embedded operating systems
Experience in requirement capture and traceability
Experience in UML design capture & analysis e.g. use of
Experience in unit testing tooling for C/C++ development, including googletest
Experience with development in C/C++ including debug and testing, preferable using GNU/LLVM tools) on embedded platforms using stop-mode debug tools such as JTAG/SWD
Experience with development of peripheral drivers.
Knowledge of RTOS, SoC architecture (core, cache, memory, bus architecture, IOs, etc.) and common hardware blocks
Experience with Source Code and Configuration management tools, git knowledge is required
Willingness to work in a structured software development environment with ability to work on low-level implementation (code & test)
Willingness to work in a high-caliber mixed hardware/software development team
Good English communication (written and verbal) and positive interpersonal skills
Bachelor's degree in Engineering, Information Systems, Computer Science, or related field.
5+ years Software Engineering or related work experience.
2+ years experience with Programming Language such as C, C++, Java, Python, etc.
5+ years of relevant experience
Familiar with inter-process communication architecture such as gRPC.
Familiarity with at least one of the safety centric standards such as ISO 26262, IEC 61508, ISO 13485, DO-178/DO-254.
Familiar with high speed interfaces such as PCIe and LPDDR
Familiar with implementing systems with high reliability expectations such as use of ECC, PCI AER fields.
Familiar with low speed interfaces such as I2C, SPI, SPMI, AVSBus & PMBus
Experience working with and familiarity with important SOC building blocks like interrupt controller & timers
Software development and debug tools including compilers, profilers, source control systems, emulators, JTAG and serial debuggers, and logic analyzers
Familiar working with software running on Qualcomm’s QuRT RTOS (ARM Cortex-A CPU’s and Hexagon DSPs)
Familiar with Qualcomm’s Core Software infrastructure e.g. Glink, QDSS, SOC power control algorithms such as dynamic frequency/voltage scaling.
Applicants: If you need an accommodation, during the application/hiring process, you may request an accommodation by sending email to accommodationsupport
To all Staffing and Recruiting Agencies: Our Careers Site is only for individuals seeking a job at Qualcomm. Staffing and recruiting agencies and individuals being represented by an agency are not authorized to use this site or to submit profiles, applications or resumes, and any such submissions will be considered unsolicited. Qualcomm does not accept unsolicited resumes or applications from agencies. Please do not forward resumes to our jobs alias, Qualcomm employees or any other company location. Qualcomm is not responsible for any fees related to unsolicited resumes/applications.
If you would like more information about this role, please contact Qualcomm Careers (http://www.qualcomm.com/contact/corporate) .
We are engineers, scientists and business strategists. We are from many different countries and speak many different languages. We come from diverse cultures and have unique perspectives. Together, we focus on a single goal—we invent breakthrough technologies that transform how the world connects, computes, and communicates.
Employment Notices for US-based Job Postings
Equal Employment Opportunity (https://www.eeoc.gov/sites/default/files/migrated_files/employers/poster_screen_reader_optimized.pdf)
"EEO is the Law" Poster Supplement
Pay Transparency NonDiscrimination Provision (https://www.dol.gov/sites/dolgov/files/ofccp/pdf/pay-transp_%20English_formattedESQA508c.pdf)
Employee Polygraph Protection Act
Family Medical Leave Act (https://www.dol.gov/sites/dolgov/files/WHD/legacy/files/fmlaen.pdf)
Rights of Pregnant Employees
Discrimination and Harassment (https://www.dfeh.ca.gov/wp-content/uploads/sites/32/2020/10/Workplace-Discrimination-Poster_ENG.pdf)
California Family Rights Act
Prepare and succeed
Qualcomm Interview FAQs (https://www.qualcomm.com/company/careers/faqs)
Employment Fraud Alert
We have received reports of employment scams that seek financial or personal information from job candidates. Please note these communications are fraudulent. Click here (https://www.qualcomm.com/employment-fraud-alert) to view our Employment Fraud Alert.