Posted in

Software Engineer – Machine Learning – Machine Learning Engineering

Software Engineer – Machine Learning – Machine Learning Engineering

CompanyQualcomm
LocationToronto, ON, Canada
Salary$Not Provided – $Not Provided
TypeFull-Time
DegreesBachelor’s, Master’s, PhD
Experience LevelMid Level

Requirements

  • Bachelor’s degree in Computer Science, Engineering, Information Systems, or related field and 2+ 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 1+ year of Hardware Engineering, Software Engineering, Systems Engineering, or related work experience.
  • OR PhD in Computer Science, Engineering, Information Systems, or related field.

Responsibilities

  • Software development of the Qualcomm AI Stack SDKs and tools to support execution of the latest Neural Networks on Windows on Snapdragon.
  • Validate and/or improve the performance and accuracy of your software through detailed analysis and test of machine learning use cases.
  • Assists with the development and application of machine learning techniques into products and/or AI solutions to enable customers to do the same.
  • Assists in the development of 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.
  • Works under supervision. Decision-making affects direct area of work and/or work group.

Preferred Qualifications

  • Experience with Windows application development (e.g. working on tutorials/examples and validating integration into Windows stack)
  • 1+ year software development experience using C/C++
  • Strong software development skills (e.g. data structure and algorithm design, object oriented or other software design paradigm knowledge, software debugging and testing, etc.)
  • Strong communication skills (verbal, presentation, written)
  • 1+ years of Windows software development experience
  • Experience with Windows OS, Visual Studio, Windows Performance Analyzer (WPA), WinDbg tools
  • Experience debugging complex problems across multiple layers of hardware, OS, compiler, and drivers
  • Experience in Compiler and JIT technologies
  • Experience with ONNX RT
  • Experience with different NN architectures DNNs, CNNs, RNNs/LSTMs, GANs, LLMs, etc.
  • Experience with Machine Learning frameworks (e.g., Tensor Flow, Pytorch, Keras).
  • Experience with Windows AI benchmarks, like MLPerf, Geekbanch AI, Procyon, etc.
  • Experience with low level interactions between operating systems and hardware.
  • Experience with Qualcomm FastRPC and Windows MCDM drivers
  • Experience using/integrating Qualcomm AI Stack products (e.g. QNN, SNPE, QAIRT)
  • Experience with agile software development practices and git based SCM
  • Linux software development
  • Software development experience with Python
  • Ability to collaborate across a globally diverse team and multiple interests