Job Area: Engineering Group, Engineering Group > Software Engineering
Qualcomm CR&D is looking for an experienced software engineer in the areas of Linux user-space for Machine Learning use cases. The development target is Qualcomm high-performance inference accelerator AI100 and related products.
The candidate should be familiar with developing SW using modern C++(11,14,17), Object Oriented Design, Design Patterns Principles, Linux user-mode drivers, inter-process communication such as gRPC, protocol buffers, system profiling, code optimization and tool development.
Responsibilities include Linux software architecture and design, development, software integration, functional and performance testing. Ideal candidates for this position will demonstrate the following:
8+ years' experience with Linux user-space development, including IOCTL interfaces, API development and multi-threaded processing
8+ years' experience with development in Modern C++(11,14,17) including debug and testing.
Proficiency across multiple languages (C, C++, Python) and experience in unit testing tooling for C and C++ development, including googletest.
Experience with real-time embedded operating systems.
Experience in requirement capture and traceability.
Experience in UML design capture & analysis.
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)
Good English communication (written and verbal) and positive interpersonal skills
Familiar with inter-process communication architecture such as gRPC.
Software development and debug tools including compilers, profilers, source control systems, emulators, JTAG and serial debuggers, and logic analyzers
Minimum Qualifications: • Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 4+ years of Software Engineering or related work experience. OR Master's degree in Engineering, Information Systems, Computer Science, or related field and 3+ years of Software Engineering or related work experience. OR PhD in Engineering, Information Systems, Computer Science, or related field and 2+ years of Software Engineering or related work experience. • 2+ years of work experience with Programming Language such as C, C++, Java, Python, etc.
Preferred Qualifications: • Master's Degree in Engineering, Information Systems, Computer Science or related field. • 8+ years of Software Engineering or related work experience. • 3+ years of experience with Database Management Software. • 3+ years of experience with API. • 1+ year of work experience with Git, Perforce, or Source Code Management System.
Applicants: If you need an accommodation, during the application/hiring process, you may request an accommodation by sending email to accommodationsupport
Although this role has some expected minor physical activity, this should not deter otherwise qualified applicants from applying. If you are an individual with a physical or mental disability and need an accommodation during the application/hiring process, please call Qualcomm's toll-free number found here for assistance. Qualcomm will provide reasonable accommodations, upon request, to support individuals with disabilities as part of our ongoing efforts to create an accessible workplace.
Qualcomm is an equal opportunity employer and supports workforce diversity.
Qualcomm expects its employees to abide by all applicable policies and procedures, including but not limited to security and other requirements regarding protection of Company confidential information and other confidential and/or proprietary information, to the extent those requirements are permissible under applicable law.
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.