Machine Learning Engineer, Frameworks & Performance (New Grad to Principal level)

Company:

Qualcomm Canada ULC

Job Area:

Engineering Group, Engineering Group > Machine Learning Engineering

General Summary:

Today, more intelligence is moving to end devices, and mobile is becoming the pervasive AI platform. Building on the smartphone foundation and the scale of mobile, Qualcomm envisions making AI ubiquitous—expanding beyond mobile and powering other end devices, machines, vehicles, and things.

We are inventing, developing, and commercializing power-efficient on-device AI, edge cloud AI, and 5G to make this a reality. New Position


Job Purpose & Responsibilities:

As a member of Qualcomm’s ML Systems Team, you will participate in two activities:

  • Development and evolution of ML/AI compilers (production and exploratory versions) for efficient mappings of ML/AI algorithms on existing and future HW
  • Analysis of ML/AI algorithms and workloads to drive future features in Qualcomm’s ML HW/SW offerings

Key Responsibilities:

  • Contributing to the development and evolution of ML/AI compilers within Qualcomm
  • Defining and implementing algorithms for compiling ML/AI workloads to achieve high performance and low power on Qualcomm HW
  • Creating and implementing algorithms that couple PyTorch framework efficiently to Qualcomm ML/AI Compiler flows.
  • Understanding trends in ML network design, through customer engagements and latest academic research, and how this affects both SW and HW design
  • Exploration and analysis of performance/area/power trade-offs for future HW and SW ML algorithms
  • Creation of performance-driven simulation components (using C++, Python) for analysis and design of high-performance HW/SW algorithms on future SoCs
  • Pre-Silicon prediction of performance for various ML algorithms
  • Running, debugging and analyzing performance simulations to suggest enhancements to Qualcomm hardware and software to tackle framework, compute and system memory-related bottlenecks
  • Successful applicants will work in cross-site, cross-functional teams.


Requirements:

  • Demonstrated ability to learn, think and adapt in fast changing environment
  • Detail-oriented with strong problem-solving, analytical and debugging skills
  • Strong communication skills (written and verbal)
  • Strong background in algorithm development and performance analysis is essential

The following experiences would be significant assets:

  • Strong object-oriented design principles
  • Strong knowledge of C++
  • Strong knowledge of Python
  • Experience in compiler, CPU, DSP and/or GPU design and development is an asset
  • Knowledge of network model formats/platforms (eg. PyTorch, ONNX) is a strong asset
  • Knowledge of software development processes (revision control, CD/CI, etc.)
  • Familiarity with tools such as git, Jenkins, Docker, clang/MSVC
  • On-silicon debug skills of high-performance compute algorithms
  • Knowledge of algorithms and data structures
  • Knowledge of computer architecture, digital circuits and event-driven transactional models/simulators

Minimum Qualifications:

  • Bachelor's degree in Computer Science, Engineering, Information Systems, or related field and 8+ years of Hardware Engineering, Software Engineering, Systems Engineering, or related work experience.
OR
Master's degree in Computer Science, Engineering, Information Systems, or related field and 7+ years of Hardware Engineering, Software Engineering, Systems Engineering, or related work experience.
OR
PhD in Computer Science, Engineering, Information Systems, or related field and 6+ years of Hardware Engineering, Software Engineering, Systems Engineering, or related work experience.

Applicants : 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).

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 .

Back to blog

Other Jobs To Apply

No other job posts for this day.

Common Interview Questions And Answers

1. HOW DO YOU PLAN YOUR DAY?

This is what this question poses: When do you focus and start working seriously? What are the hours you work optimally? Are you a night owl? A morning bird? Remote teams can be made up of people working on different shifts and around the world, so you won't necessarily be stuck in the 9-5 schedule if it's not for you...

2. HOW DO YOU USE THE DIFFERENT COMMUNICATION TOOLS IN DIFFERENT SITUATIONS?

When you're working on a remote team, there's no way to chat in the hallway between meetings or catch up on the latest project during an office carpool. Therefore, virtual communication will be absolutely essential to get your work done...

3. WHAT IS "WORKING REMOTE" REALLY FOR YOU?

Many people want to work remotely because of the flexibility it allows. You can work anywhere and at any time of the day...

4. WHAT DO YOU NEED IN YOUR PHYSICAL WORKSPACE TO SUCCEED IN YOUR WORK?

With this question, companies are looking to see what equipment they may need to provide you with and to verify how aware you are of what remote working could mean for you physically and logistically...

5. HOW DO YOU PROCESS INFORMATION?

Several years ago, I was working in a team to plan a big event. My supervisor made us all work as a team before the big day. One of our activities has been to find out how each of us processes information...

6. HOW DO YOU MANAGE THE CALENDAR AND THE PROGRAM? WHICH APPLICATIONS / SYSTEM DO YOU USE?

Or you may receive even more specific questions, such as: What's on your calendar? Do you plan blocks of time to do certain types of work? Do you have an open calendar that everyone can see?...

7. HOW DO YOU ORGANIZE FILES, LINKS, AND TABS ON YOUR COMPUTER?

Just like your schedule, how you track files and other information is very important. After all, everything is digital!...

8. HOW TO PRIORITIZE WORK?

The day I watched Marie Forleo's film separating the important from the urgent, my life changed. Not all remote jobs start fast, but most of them are...

9. HOW DO YOU PREPARE FOR A MEETING AND PREPARE A MEETING? WHAT DO YOU SEE HAPPENING DURING THE MEETING?

Just as communication is essential when working remotely, so is organization. Because you won't have those opportunities in the elevator or a casual conversation in the lunchroom, you should take advantage of the little time you have in a video or phone conference...

10. HOW DO YOU USE TECHNOLOGY ON A DAILY BASIS, IN YOUR WORK AND FOR YOUR PLEASURE?

This is a great question because it shows your comfort level with technology, which is very important for a remote worker because you will be working with technology over time...