Перейти к содержимому
Яндекс
Я
Яндекс
Москва
1 активна · проверена 10 часов назад

Разработчик GPU-инфраструктуры (C/C++, CUDA, K8s)

Яндекс ищет разработчика для работы над GPU-инфраструктурой внутреннего облака. Нужно развивать системное ПО для управления GPU/RDMA-устройствами, профилирования и мониторинга, а также участвовать в оптимизации распределённого инференса и обучения ML-моделей. Требуется знание C/C++, CUDA, K8s и опыт с распределёнными вычислениями. Предлагается работа с cutting-edge технологиями и R&D-задачами.

senior удалённо
Языки: English · Pre-Intermediate
Вакансии в Telegram-канале
Свежие вакансии Каждый день
Подписаться
??%
Match Score
Войдите и создайте резюме
Войти
описание

Что предстоит делать

Мы развиваем внутреннее контейнерное облако (Runtime Cloud — RTC), в котором запущены все сервисы, создаваемые тысячами разработчиков Яндекса. Наша цель — сделать удобное облако для сервисов различного масштаба, от единиц до десятков тысяч контейнеров в сервисе, и при этом рационально использовать все имеющиеся в нашем распоряжении аппаратные ресурсы. Сейчас под управлением внутреннего облака находится более 100 000 железных серверов. На них заведено более 50 000 сервисов, а счёт контейнеров идёт на миллионы. В нашем облаке живут также InfiniBand-кластеры для распределённого обучения, которые включены в рейтинг суперкомпьютеров TOP500. Мы не только позволяем настраивать и запускать сервисы, но и даём пользователю всё, что нужно, чтобы их эксплуатировать: настраиваем балансировку, предоставляем мониторинг поднятых сервисов, собираем логи, поддерживаем интеграцию с CI/CD, даём удобные способы ad-hoc- и fleet-wide-профилирования и не только. Мы стремимся сделать из облака единую тесно интегрированную платформу (PaaS), которая обеспечит удобство и надёжность разработки и эксплуатации сервисов, позволив разработчикам использовать как стандартные API/UI-механизмы, так и подход Infrastructure as Code. Помимо этого, мы разрабатываем внутренние инструменты для управления железом, сертификатами, доступами, чтобы минимизировать нагрузку на эксплуатацию облака и поддержку наших пользователей. Группа GPU-инфраструктуры отвечает за разработку сервисов для работоспособности GPU-инфраструктуры всего Яндекса, ML/HPC-компонентов для распределённого инференса и обучения, которые позволяют эффективно использовать современные ускорители и RDMA-сеть. Мы активно участвуем не только в разработке системного ПО и фреймворков распределённых вычислений для тренировки и инференса ML-моделей, но и в дизайне наших RDMA-кластеров, их конфигурировании, мониторинге, оптимизации на протяжении всего жизненного цикла. Наши внутренние разработки, которыми пользуются тысячи ML-инженеров Яндекса: • Оператор для распределения GPU-/RDMA-устройств в контейнеры сервисов инференса и обучений. Сервис умеет работать как во внутреннем облаке Яндекса с контейнерным рантаймом Porto, так и с K8s и рантаймами CRI • Механизмы HW-проверок GPU-/RDMA-устройств • Fleet-wide GPU-профилировщик для анализа производительности как обучений, так и инференс-сервисов • Сервис мониторинга GPU-кластеров внутреннего облака • Сервис автоматизированного тестирования GPU-кластеров с помощью наших собственных и известных опенсорс-бенчмарков Мы активно участвуем в разработке и улучшении опенсорс-решений, которые сами активно используем внутри. Вот список лишь некоторых из них: • UCX — фреймворк эффективной коммуникационной P2P поверх InfininiBand, ROCE, TCP/IP, CUDA IPC, GDR и т. д. • NCCL и UCC — фреймворки коллективных операций для CPU/GPU-памяти • SGLang/vLLM/TRT-LLM — фреймворк для инференса LLM • Dynamo — сервис для запуска инференс-фреймворков в disaggregated-режиме • PyTorch Kineto — сервис профилирования GPU с помощью CUPTI Какие задачи вас ждут Поддерживать и развивать системное программное обеспечение, которое отвечает за конфигурирование, мониторинг, выделение в пользовательские контейнеры GPU- и RDMA-устройств на серверах Внутреннее облако состоит из серверов с разными моделями GPU- и RDMA-устройств, которые должны быть выделены под заказ сервисов в Porto-контейнере в YP-кластере или в другие CRI-совместимые контейнерные рантаймы в K8s-кластере. Устройства должны быть правильно сконфигурированы, чтобы отвечать пользовательским требованиям, должны доставлять в контейнер необходимые драйверозависимые библиотеки для удобства сервисов. Во время работы в пользовательском контейнере сервисы должны получать метрики об утилизации, вероятных проблемах и так далее. Эти и другие задачи решаются нашим сервисом, который должен работать безотказно и постоянно дорабатываться для решения новых вызовов. К примеру, одной из последних задач была «раскраска» InfiniBand-трафика с помощью eBPF для реализации гарантий. Поддерживать и развивать fleet-wide GPU-профилирование для всех сервисов Яндекса Современные серверы, а тем более оснащённые ускорителями и высокоскоростными сетями RDMA, стоят больших денег. Это ставит новые вызовы перед облаками и сервисами, запускаемыми в них, чтобы как можно эффективнее использовать предоставляемое железо. Один из способов оптимизации — это профилирование приложений в то время, когда они запущены в облаке. В нашем облаке реализован и интегрирован профилировщик на основе CUPTI, который позволяет с минимальными накладными расходами профилировать приложения на всём флоте постоянно и тем самым давать сервисам актуальную информацию о проблемах с утилизацией. Развивать сервисы автоматизированного управления GPU-инфраструктурой В нашем облаке много серверов с GPU, и все они требуют эффективного управления без участия человека: они должны проходить необходимое тестирование GPU-устройств, RDMA-сети и других компонентов перед попаданием в продакшн после ремонта или других регламентных работ. Мы решаем эту задачу, интегрируя и разрабатывая современные бенчмарки, нагрузочные, регрессионные тесты. Новые технологии, которые интегрируются в наше облако, к примеру одна из последних IBGDA, должны быть обязательно покрыты регрессионными тестами. Также наши сервисы выполняют мониторинг состояния флота, чтобы находить серверы с различными проблемами и гарантировать высокую доступность аппаратных ресурсов, сравнимую с уровнем других компаний или превышающую его. Эти и другие методы позволяют нам гарантировать обнаружение проблем на ранних стадиях до того, как на эти серверы заедут сервисы. Развивать и оптимизировать инфраструктуру распределённого disaggregated-инференса и обучений Мы считаем, что ML-инженеры должны решать задачи организации обучений и деплоить новые LLM в продакшн. А наше облако предоставляет базовые компоненты для организации эффективного распределённого инференса и обучений, которые доработаны и протестированы с учётом наших особенностей. Мы в нашем облаке участвуем в исследовании, разработке, развитии и эксплуатации cutting-edge-задачи: к примеру, мы предоставляем технологию распределённого disaggregated-инференса, которую любой сервис может развернуть буквально за один клик. Участвовать в дизайне и внедрении нового оборудования в нашем облаке Современные облачные решения должны быть эффективными и высокопроизводительными с точки зрения утилизации железа. И этот процесс начинается с дизайна, конфигурирования и надёжных HW-мониторингов железа. Мы внедряем современное аппаратное обеспечение в нашем облаке, дорабатываем все уровни системного ПО — от пользовательских библиотек до контейнерного рантайма и драйверов вендора, чтобы наши пользователи могли использовать новое железо без каких-либо изменений в своих приложениях. Каждый раз перед нами встают всё новые и новые задачи, к примеру внедрение новых RDMA-сетей, новых ускорителей, поддержка ARM. Мы ждем, что вы • Знаете C/C++ • Умеете писать поддерживаемый и эффективный код • Хорошо понимаете принципы работы компьютерных сетей, операционных систем, контейнеризации и виртуализации • Занимались проектами, связанными с распределёнными вычислениями на GPU • Разрабатывали или использовали CUDA, OpenCL, SYCL, ROCm или другие рантаймы для параллельных вычислений • Разрабатывали или использовали Verbs, UCX, OFI, NCCL, UCC, MPI или другие рантаймы для P2P или коллективных сетевых коммуникаций • Разрабатывали или использовали в своей работе инференс-фреймворки: SGLang, vLLM, TRT-LLM, Mooncake, Dynamo и другие • Умеете работать с K8s • Интересуетесь R&D-работой и умеете решать нетипичные задачи Будет плюсом, если вы • Разрабатывали ядро Linux и его модули • Знаете устройство аппаратной архитектуры x86, AArch64 и её особенности

навыки

Стек и инструменты

Подходит ли вам эта вакансия?

Зарегистрируйтесь и загрузите резюме — посчитаем % совпадения с этой вакансией, подсветим сильные стороны и что стоит подтянуть

Создать аккаунт PDF-парсинг резюме за 2 минуты

Ещё в Яндекс

26 активных вакансий в компании

2 д. назад

Наставник по Android-разработке

~1 763 100 ₸ оценка

Яндекс Практикум ищет опытного Android-разработчика для роли наставника. Нужно помогать студентам с вопросами, проводить вебинары и улучшать курс. Требуется от 3 лет опыта и умение понятно объяснять. Работа удаленная, частичная занятость.

Android Kotlin Compose +4
senior удал. hh
6 д. назад

Наставник в Яндекс Практикум (Full-stack разработчик)

~1 632 500 – 2 122 250 ₸ оценка

Яндекс Практикум ищет наставника для студентов курса по full-stack разработке. Нужно помогать с вопросами, проводить вебинары и давать обратную связь. Требуется коммерческий опыт с Next.js, TypeScript, React, AI-инструментами и деплоем на VPS. Работа удаленная, 2-3 часа в день, с возможностью совмещения с основной работой.

Next.js TypeScript React +12
senior удал. hh
1 нед. назад

Backend-разработчик (C++) в сервис недвижимости Поиска Яндекса

~979 500 – 1 959 000 ₸ оценка

Яндекс ищет опытного бэкенд-разработчика для создания сервиса недвижимости внутри Поиска. Нужно разрабатывать высоконагруженные компоненты, проектировать масштабируемую архитектуру и интегрировать ML-модели. Ключевое требование — отличное владение C++ или готовность на него перейти.

C++ STL микросервисы +6
senior удал. hh
1 нед. назад

Backend-разработчик (C++) в сервис недвижимости Поиска Яндекса

Яндекс ищет опытного бэкенд-разработчика для создания сервиса недвижимости внутри Поиска. Нужно разрабатывать высоконагруженные компоненты, проектировать масштабируемую архитектуру и интегрировать ML-модели. Ключевое требование — отличное владение C++ или готовность на него перейти.

C++ STL микросервисы +6
senior удал. hh

Похожие вакансии

6 вакансий
МКО Системы
М
МКО Системы
2 д. назад

Разработчик C++ со знанием Delphi

~979 500 – 1 959 000 ₸ оценка

Разработка и поддержка ПО для борьбы с преступностью. Требуется опыт C++ и Delphi уровня Senior. Предлагают удаленную работу, ДМС, обучение и допвыходной.

C++ Delphi STL +15
senior удал. hh
ЛАНИТ
Л
ЛАНИТ
2 д. назад

Senior C++ Developer

~3 006 764 – 3 803 906 ₸ оценка

Вакансия для разработчика системного ПО на C/C++: создание сетевых демонов и служб под Linux, работа с сетевыми протоколами и оборудованием. Требуется опыт программирования на C/C++ и знание сетевых технологий.

сетевые демоны Linux TCP/IP +2
senior удал. HR cr
YADRO
Y
YADRO
3 д. назад

Инженер-разработчик OpenBMC

~979 500 – 1 959 000 ₸ оценка

Ищем опытного C++ разработчика для работы над OpenBMC — open-source проектом для управления серверами. Нужно знание Linux, Yocto, Python и низкоуровневых протоколов. Предлагаем удалёнку, гибкий график, ДМС и возможности роста.

C++ Linux Yocto +12
senior удал. hh
BI.ZONE
B
BI.ZONE
3 д. назад

C/C++ разработчик DPI (Deep Packet Inspection)

~979 500 – 1 959 000 ₸ оценка

Команда ищет C/C++ разработчика для создания высокопроизводительного модуля анализа трафика (DPI) для Secure SD-WAN. Нужен опыт работы с DPDK, сетевыми протоколами и многопоточностью. Компания предлагает гибкий график, ДМС, обучение и дружную атмосферу.

C C++ DPDK +20
senior удал. hh
Sopra Steria Poland
S
Sopra Steria Poland
4 д. назад

Старший инженер-программист (C++, Qt)

~2 237 592 – 3 132 629 ₸ (16 800 – 23 520 PLN)

Ищем старшего разработчика для работы с C++, Qt и QML. Требуется опыт в создании интерфейсов и знание Vue.js. Компания предлагает удаленный формат работы.

C++ QML Vue.js
senior удал. nfj
Sopra Steria Poland
S
Sopra Steria Poland
4 д. назад

Старший инженер-программист (C++, Qt)

~2 237 592 – 3 132 629 ₸ (16 800 – 23 520 PLN)

Ищем старшего разработчика для работы с C++, Qt и QML. Требуется опыт работы с Vue.js. Предлагается удаленная занятость в международной компании.

C++ QML Vue.js
senior удал. nfj