Не упустите лучшие вакансии!
Подключите наш Telegram-бот и получайте мгновенные уведомления о новых предложениях из 10+ источников. Будьте первым, кто откликнется!
Подключить ботаРазработчик инфраструктуры генеративных сетей в Поиск
Инфраструктура у нас широкая — по всему Яндексу её используют множество команд. В задачи группы входит:
- разработка сервера инференса (не занимаемся GPU-вычислениями внутри, только бизнес-логикой);
- разработка релизных процессов для доставки сервера в прод;
- создание утилит для разворачивания сервера не в проде (чтобы клиенты могли разово по желанию временно поднять сервис, проверить, потушить);
- работа с общим балансером, где живут общедоступные модели на ограниченном количестве железа, которое должно быть доступно примерно всем в Яндексе;
- встраивание в вышеперечисленную инфру опенсорсных решений.
Иными словами, мы занимаемся обширным DevOps, чтобы продуктовые команды могли быстро и прозрачно выезжать в прод с разными генеративными моделями.
Какие задачи вас ждут
Разработка сервера инференсаУ нас есть внутрияндексовая библиотека, которая занимается расчётами генеративных моделей. Вам нужно будет разрабатывать/дорабатывать сервер вокруг этой библиотеки, который должен отвечать самым разным запросам клиентов: каждому хочется по-разному препроцессить вход; некоторым нужен gRPC, некоторым — WebSocket; кто-то хочет дополнительную отправку данных во внешнее хранилище; кому-то нужен батчинг, а кому-то нет; кто-то хочет одну модель, кому-то и пяти не хватает и прочее в этом духе.
Релизные процессы для доставки сервера в прод
Внутри Яндекса уже насчитывается около 200 инсталляций для разных продуктов. При таких масштабах и разнообразных пожеланиях вам предстоит организовывать горизонтально масштабируемые процессы выкаток. Это включает (среди прочего): регулярное вытаскивание актуальных запросов из прода, no-diff-тестирование всех доступных ручек для каждого из клиентов, непосредственно выкатку.
Создание утилит для разворачивания сервера не в проде
У клиентов есть понятное желание что-то быстро поднять на своём железе не для прода, а для прокачивания таблиц без гарантий на время ответа для проверок разных гипотез. Важно предоставить им для этого удобные способы — это тоже будет входить в число ваших задач.
Разработка коммунального балансера
Попробовать модели хотят примерно все, но железо ограничено. Хочется давать возможность всем желающим позадавать запросы в основные модели. Для этого вам предстоит разрабатывать отдельный балансер, который будет пытаться по возможности пускать всех с учётом ограниченного железа.
Встраивание опенсорсных решений
Вы будете работать со всей вышеперечисленной инфраструктурой и заниматься встраиванием в неё опенсорсных решений.
Мы ждем, что вы
- Разбираетесь в базовых алгоритмах и структурах данных
- Хорошо знаете С++
- Знакомы с паттернами и идиомами построения программного обеспечения
- Умеете писать надёжный и читабельный многопоточный код
Ваше резюме увидят первым!
Автоматическое поднятие на HeadHunter каждые 4 часа. Увеличьте свои шансы на успех в 10 раз!
Подключить автоподнятие