Machine Learning: Performance Developer Remote or Hybrid Canada or United States

Autodesk
Eastern Ontario
CAD 80,000 - 100,000
Job description

Job Requisition ID #

25WD85972

25WD85972, Machine Learning : Développeur de performances

French translation will follow!/La traduction en français suivra!

Présentation du poste

Le travail que nous faisons chez Autodesk touche presque chaque personne sur la planète. En créant des outils logiciels pour la construction de bâtiments, de machines et même des derniers films, nous influençons et donnons les moyens d'agir à certaines des personnes les plus créatives au monde. En tant qu'ingénieur en apprentissage automatique chez Autodesk Research, vous travaillerez aux côtés de chercheurs et d'ingénieurs de renommée mondiale pour créer de nouvelles fonctionnalités de produits basées sur l'apprentissage automatique afin d'aider nos clients à imaginer, concevoir et créer un monde meilleur. Vous êtes un ingénieur logiciel passionné par la résolution de problèmes et la création de choses. Vous êtes enthousiaste à l'idée de collaborer avec des chercheurs en IA pour mettre en œuvre des fonctionnalités d'IA générative dans les produits Autodesk.

Vous serez placé sous la responsabilité d'un responsable de recherche au sein de l'organisation d'ingénierie de recherche d'Autodesk Research.

Localisation : Nous sommes une équipe internationale, basée à Londres, San Francisco, Toronto et à distance. Pour ce poste, nous encourageons le travail en présentiel, hybride et à distance.

Responsabilités

  1. Mettre en œuvre des noyaux GPU pour s'adapter à nos modèles avec une inférence de faible précision
  2. Écrire des algorithmes personnalisés de faible équilibrage pour optimiser le service
  3. Profiler et optimiser les tâches et le code d'apprentissage automatique
  4. Écrire du code efficace pour les tâches d'apprentissage automatique, en se concentrant sur les logiciels plutôt que sur le matériel
  5. Répartir les tâches sur plusieurs GPU
  6. Comprendre le type de GPU adapté aux tâches d'inférence
  7. Préparer les conteneurs et les instances appropriés pour diverses tâches d'apprentissage automatique
  8. Former et optimiser les modèles d'apprentissage automatique
  9. Collaborer à des projets à l'intersection de la recherche et du produit avec une équipe diversifiée et internationale de chercheurs et d'ingénieurs
  10. Soutenir la recherche par la construction de pipelines d'apprentissage automatique, de prototypes et de code réutilisable et testable
  11. Traiter les données et analyser les extractions de caractéristiques
  12. Analyser les erreurs et fournir des solutions aux problèmes
  13. Présenter les résultats aux collaborateurs et à la direction

Qualifications minimales

  1. Licence ou maîtrise en informatique, ou expérience équivalente dans le secteur
  2. Plus de 3 ans d'expérience en développement de logiciels
  3. Connaissance des composants internes de PyTorch, CUDA et C++ pour le traitement parallèle
  4. Expérience du contrôle de version, de la reproductibilité et du déploiement de modèles d'apprentissage automatique
  5. Expérience des services et architectures cloud (par exemple AWS, Azure)
  6. Modèles de programmation et techniques d'optimisation du calcul par GPU
  7. Développement, maintenance et optimisation de l'infrastructure de calcul par GPU
  8. Excellentes compétences en matière de documentation écrite pour documenter le code, les architectures et les expériences

Qualifications préférées

  1. Expérience de la modélisation, de l'architecture et du traitement des données à l'aide de diverses représentations de données, y compris la géométrie 2D et 3D
  2. Expérience de la programmation parallèle haute performance ou de la programmation GPU
  3. Expérience de l'ajout de la prise en charge des graphes de calcul, de l'exécution ou du backend de périphérique à la prise en charge des bibliothèques d'apprentissage automatique (PyTorch ou Lightning Ray)
  4. Expérience de la mise à l'échelle des pipelines de données et de formation en apprentissage automatique
  5. Expérience de travail avec des systèmes distribués
  6. Connaissance des secteurs de la conception, de la fabrication, de l'AEC ou des médias et du divertissement
  7. Expérience avec Autodesk ou des produits similaires (CAO, IAO, FAO, etc.)

25WD85972, Machine Learning: Performance Developer

Position Overview

The work we do at Autodesk touches nearly every person on the planet. By creating software tools for making buildings, machines, and even the latest movies, we influence and empower some of the most creative people in the world. As a Machine Learning Engineer at Autodesk Research, you will work side-by-side with world-class researchers and engineers to build new ML-powered product features to help our customers imagine, design, and make a better world. You are a software engineer who is passionate about solving problems and building things. You are excited to collaborate with AI researchers to implement generative AI features in Autodesk products.

You will report to a Research Manager in the Research Engineering organization of Autodesk Research.

Location: We are a global team, located in London, San Francisco, Toronto, and remotely. For this role we support both in-person, hybrid, and remote work.

Responsibilities

  1. Implement GPU kernels to adapt to our models with low precision inference
  2. Write custom low balancing algorithms to optimize serving
  3. Profile and optimize machine learning tasks and code
  4. Write efficient code for machine learning tasks, focusing on software rather than hardware
  5. Split Jobs across multiple GPUs
  6. Understanding of the right type of GPUs for inference tasks
  7. Prepare appropriate containers and instances for various machine learning tasks
  8. Train and optimize machine learning models
  9. Collaborate on projects at the intersection of research and product with a diverse, global team of researchers and engineers
  10. Support research through the construction of ML pipelines, prototypes, and reusable, testable code
  11. Process data and analyze feature extractions
  12. Analyze errors and provide solutions to problems
  13. Present results to collaborators and leadership

Minimum Qualifications

  1. BSc or MSc in Computer Science, or equivalent industry experience
  2. 3+ years of software development experience
  3. Knowledge of Internals of PyTorch, CUDA and C++ for parallel processing
  4. Experience with version control, reproducibility, and deploying machine learning models
  5. Experience with cloud services and architectures (e.g. AWS, Azure)
  6. GPU compute programming models & optimization techniques.
  7. GPU compute framework development, maintenance, and optimization.
  8. Excellent written documentation skills to document code, architectures, and experiments

Preferred Qualifications

  1. Experience with data modeling, architecture, and processing using varied data representations including 2D and 3D geometry
  2. Experience with high performance parallel programming, or GPU programming
  3. Experience with adding computational graph support, runtime or device backend to Machine learning libraries (PyTorch or Lightning Ray) support
  4. Experience scaling ML training and data pipelines
  5. Experience working with distributed systems
  6. Knowledge of the design, manufacturing, AEC, or media & entertainment industries
  7. Experience with Autodesk or similar products (CAD, CAE, CAM, etc.)
Get a free, confidential resume review.
Select file or drag and drop it
Avatar
Free online coaching
Improve your chances of getting that interview invitation!
Be the first to explore new Machine Learning: Performance Developer Remote or Hybrid Canada or United States jobs in Eastern Ontario