Staff Software Engineer, TPU, Performance
Автоматический пересказ вакансии на русском. Полный текст на языке оригинала и форма отклика — на сайте работодателя.
Инженер в команду Core ML (Google) для оптимизации производительности ML-моделей (Gemini и open-source) на TPU для JAX и PyTorch. Работа влияет на архитектуру следующих поколений TPU.
Задачи
- Поддерживать ML-бенчмарки обучения и инференса, репрезентативные для продакшена Google и индустрии ML
- Достигать целевой производительности для запусков клиентов и сторонних/OSS-моделей
- Использовать бенчмарки для поиска возможностей оптимизации и улучшения производительности компилятора и рантайма совместно с командами
- Помогать продуктовым командам и исследователям решать проблемы производительности: онбординг новых моделей на новые TPU, обучение гигантских моделей на тысячах TPU
- Анализировать метрики производительности и эффективности, находить узкие места и реализовывать решения в масштабе флота Google
Требования
- Степень бакалавра или эквивалентный практический опыт
- 8 лет опыта разработки ПО
- 5 лет опыта в одном или нескольких направлениях: speech/audio, reinforcement learning, ML-инфраструктура или другая область ML
- 5 лет опыта проектирования ML и ML-инфраструктуры (деплой, оценка моделей, обработка данных, отладка, fine tuning)
- 5 лет опыта тестирования и запуска программных продуктов, 3 года опыта проектирования и архитектуры ПО
- Желательно: магистратура или PhD в инженерии, computer science или смежной области
- Желательно: 8 лет опыта с структурами данных и алгоритмами
- Желательно: опыт с machine learning, оптимизацией компиляторов, генерацией кода и runtime-системами для GPU (OpenXLA, MLIR, Triton)
- Желательно: опыт низкоуровневого программирования GPU (CUDA, OpenCL) и тюнинга производительности
- Желательно: понимание архитектур GPU, TPU и других ML-ускорителей, иерархий памяти и узких мест производительности
Условия
- Зарплата $207000–$300000 в год + 20% бонус + equity + benefits
- Возможность выбрать офис: Sunnyvale, CA или New York, NY
- Собеседования преимущественно вживую
Навыки
- ML
- TPU
- JAX
- PyTorch
- OpenXLA
- MLIR
- Triton
- CUDA
- OpenCL
- GPU
- compiler optimization
- code generation
- runtime systems
- reinforcement learning
- speech/audio
- ML infrastructure
- data structures
- algorithms