Qualcomm

Staff Embedded Software Engineer

Qualcomm

Markham, Ontario, Canada

full time

13 Mar 2025

Qualcomm

General Summary
As a member of Low Power AI solution team, you will play a critical role at deploying AI models on Qualcomm's low power AI accelerator. The position focuses on mapping high level machine learning operators to low level hardware instructions, involving various optimization techniques: graph transformation, scheduling, memory planning, individual operator implementation, quantization, etc. Your expertise at machine learning is expected to enhance inference efficiency and accuracy of different models on Qualcomm's hardware architecture.

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.
OR
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.
OR
PhD in Computer Science, Engineering, Information Systems, or related field and 2+ years of Hardware Engineering, Software Engineering, Systems Engineering, or related work experience.

Skills / Experience Required

  • Solid hands-on skills and experience on performance optimization.
  • Proficient programming skills in C/C++
  • Machine learning knowledge is a plus..
  • Experience with Linux/Android development environment and tools.
  • Familiar with embedded/computer hardware architecture.

Preferred Qualifications

  • Master's degree in Computer Science, Engineering, Information Systems, or related field.
  • 2+ years of experience with Machine Learning frameworks (e.g., Tensor Flow, Caffe, Caffe 2, Pytorch, Keras).
  • 2+ years of experience in embedded system development and optimization with application to a specific problem domain in ML (e.g., NLP, multi-media).
  • 2+ years of experience with C/C++, ideally at the embedded level
  • 2+ years of experience using statistics and probability (e.g., conditional probability, Bayes rule).
  • 2+ years experience working in a large matrixed organization.
  • 1+ year of experience with low level interactions between operating systems (e.g., Linux, Android, QNX) and Hardware.
  • 1+ year of work experience in a role requiring interaction with senior leadership (e.g., Director and above).
    Principal Duties and Responsibilities:
  • Applies Machine Learning knowledge to extend training or runtime frameworks or model efficiency software tools with new features and optimizations.
  • Models, architects, and develops machine learning hardware (co-designed with machine learning software) for inference or training solutions.
    Develops optimized software to enable AI models deployed on hardware (e.g., machine learning kernels, compiler tools, or model efficiency tools, etc.) to allow specific hardware features; collaborates with team members for joint design and development.
    Assists with the development and application of machine learning techniques into products and/or AI solutions to enable customers to do the same.
    Develops, adapts, or prototypes complex machine learning algorithms, models, or frameworks aligned with and motivated by product proposals or roadmaps with minimal guidance from more experienced engineers.
    Conducts complex experiments to train and evaluate machine learning models and/or software independently.



Do you want to get jobs like this one sent to your email every week?

Then subscribe to the C++ JOBS newsletter!