onsite
AI Software Tools Lead (Principal Engineer)
AI Software Tools Lead (Principal Engineer)
Qualcomm is seeking an AI Software Tools Lead (Principal Engineer) to join a growing team focused on advancing state-of-the-art AI execution on Qualcomm SoCs. The role involves leading the team responsible for feature implementation, deliverables, and customer engagement for SDK tools like AIMET, focusing on conversion, quantization, model optimization, profiling, and visualization of deep learning networks.
About the role
About the Role
Join a new and growing team at Qualcomm focused on advancing state-of-the-art Artificial Intelligence execution on Qualcomm SoCs. The team leverages Qualcomm chips’ extensive heterogeneous computing capabilities to enable the running of trained neural networks on-device without a need for connection to the cloud. Qualcomm Neural Processing SDK, Android Neural Network, and Qualcomm AI Engine Direct are designed to help developers run neural network models trained in various frameworks on Snapdragon platforms at blazing speeds while consuming minimal power on billions of devices worldwide.
Role Specific Responsibilities
- As a Tools lead, you will be hands-on and lead the team responsible for feature implementation, deliverables, and customer engagement for our SDK tools, the AI Model Efficiency Toolkit (AIMET), and other tools focused on conversion, quantization, model optimization, profiling, and visualization of deep learning networks and execution.
- Enhance AI software tools to support the latest and greatest DNNs emerging from the research community and OEMs, improve quantization algorithms, graph optimization, and version upgrades of frameworks like PyTorch, TensorFlow, and ONNX format.
- You will work closely with other internal sub-teams within Qualcomm for collection of metrics at various subsystems like DSP, GPU, etc., to provide a unified execution view on IDE and visualization tools for deep learning model execution to enable easy adoption and debugging of AI software products by internal and external customers.
- You will be working closely with internal teams on graph and model optimization in converters and tools to meet competitive KPI requirements.
- You will thrive in an environment which will require you to come up with innovative techniques for delivering best-in-class power, performance, and memory KPIs for our AI software tools like AIMET.
- You will also have to keep up with the fast-paced development happening in the industry and academia to continuously enhance our solution from software engineering as well as machine learning standpoint.
Minimum Skills
- Live and breathe quality software development with excellent analytical and debugging skills.
- Experience with machine learning accelerators or GPU development, optimizing algorithms for hardware acceleration cores using OpenCL, DSPs, and/or ML specific cores.
- Strong knowledge of Data Structures and Algorithms, Graph optimization.
- Strong understanding of Deep Learning fundamentals.
- Strong development skills in C/C++, Python.
- Experience in developing data visualization, code, and performance profiling tools and extensions to IDEs.
- Good understanding of optimization techniques for better Performance, Power, and Memory usage.
- Experience with at least one machine learning framework like TensorFlow, Caffe, PyTorch, etc.
- Experience with embedded systems development.
- Understanding of software development and debugging in embedded environments.
- Excellent communication skills (verbal, presentation, written).
- Ability to collaborate across a globally diverse team and multiple interests.
Preferred Skills
- Familiarity with neural network operators and model formats including PyTorch, ONNX, Caffe, Caffe2, and TensorFlow.
- Optimizing algorithms for hardware acceleration cores using OpenCL, DSPs, and/or ML specific cores.
- Experience working with heterogeneous or parallel computing systems and knowledge of associated languages like OpenCL, CUDA, etc., is a plus.
- Experience developing components of optimization workflows such as TensorRT or NVIDIA nsight.
- Experience developing VSCode plugins or related.
- Experience in development of drivers/frameworks of multimedia systems like camera, audio, video, graphics, etc., is a plus.
- Experience with machine learning accelerators or GPU development, optimizing algorithms for hardware acceleration cores using OpenCL, DSPs, and/or ML specific cores.
- Good understanding about Processor architecture, system design fundamentals.
- Background in mathematical operations: linear algebra, fast math libraries.
Experience & Education
- Experience: 15+ years of relevant work experience and leading a 20+ member team consisting of individual contributors and managers.
- Education: Bachelor's/Master’s in Computer Science, Computer Engineering, or Electrical Engineering.