Expoint - all jobs in one place

מציאת משרת הייטק בחברות הטובות ביותר מעולם לא הייתה קלה יותר

Limitless High-tech career opportunities - Expoint

Qualcomm Machine Learning Framework Compiler & Performance Engineer Multiple Levels 
Canada, Ontario, Markham 
51491256

28.11.2024

Job Area:

Engineering Group, Engineering Group > Machine Learning Engineering

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

Minimum Qualifications:

• Bachelor's degree in Computer Science, Engineering, Information Systems, or related field and 4+ years of Hardware Engineering, Software Engineering, Systems Engineering, or related work experience.

Master's degree in Computer Science, Engineering, Information Systems, or related field and 3+ years of Hardware Engineering, Software Engineering, Systems Engineering, or related work experience.

PhD in Computer Science, Engineering, Information Systems, or related field and 2+ years of Hardware Engineering, Software Engineering, Systems Engineering, or related work experience.

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 applications 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 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

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.