Инфраструктура Яндекса — одна из самых крупных в мире и самая крупная в стране. В неё входят несколько дата‑центров, около сотни тысяч серверов, а в неделю выполняются десятки тысяч коммитов. Все сервисы Яндекса работают на наших технологиях. Мы развиваем внутреннее контейнерное облако — Runtime Cloud (RTC). Это единая платформа, которая помогает тысячам разработчиков Яндекса запускать и использовать сервисы любого масштаба.
Сейчас RTC управляет сотнями тысяч физических серверов. На платформе запущены миллионы контейнеров и несколько HPC‑кластеров, занимающих лидирующие позиции среди российских суперкомпьютеров. Мы не просто предоставляем инфраструктуру, а строим полноценную PaaS‑платформу. Она даёт пользователям всё необходимое: от настройки балансировки и мониторинга до интеграции с CI/CD и подхода Infrastructure as Code.
Группа системной разработки создаёт базовый слой облачного ПО — фундамент внутреннего облака. Мы разработали суперкомпьютеры для обучения больших ML‑моделей, систему контейнеризации Porto и другие технологии мирового уровня. Ищем разработчика, который готов работать с разнообразными технологиями и поможет сделать облако быстрее, надёжнее и удобнее.
Какие задачи вас ждут
Развитие контейнеризации и доставки данных
Вы будете развивать систему контейнеризации Porto. Она позволяет запускать множество сервисов на одном хосте — при этом сервисы не мешают друг другу и получают все нужные ресурсы. Вам предстоит быстро адаптировать систему под меняющиеся нагрузки и требования сервисов. Также нужно решать сложную задачу передачи больших объёмов данных на тысячи хостов. При этом с ростом компании требования к скорости и масштабируемости постоянно увеличиваются.
Работа с ядром Linux
Вам предстоит участвовать в развитии компонентов ядра Linux, адаптированных под нагрузки и особенности Яндекса. Ядро — основа операционной системы, и наш набор изменений помогает повысить стабильность и производительность сервисов, работающих в RTC.
Развитие сетевого стека
Нужно будет обеспечивать взаимодействие тысяч контейнеров — гарантировать нужные показатели задержек и пропускной способности. Облако не сможет работать эффективно без стабильного и быстрого сетевого стека. Система должна быть производительной и предсказуемой. Требования растут, прежние решения устаревают — вам предстоит постоянно анализировать и оптимизировать сетевой стек: устранять узкие места и повышать надёжность.
Поддержка компонентов
Вы будете работать с разными инструментами: системой сбора контейнерных метрик, shim для реализации CRI-интерфейса, агентом для управления BPF‑программами на хосте, сервисами мониторинга и системой clusterwide‑анализа производительности приложений (аналог Google Cloud Profiler). Ваша задача — не только поддерживать эти инструменты, но и развивать их, чтобы сделать облако более производительным и отказоустойчивым.
Мы ждём, что вы
- Работали с кодовой базой ядра Linux
- Умеете диагностировать проблемы производительности Linux
- Хорошо понимаете принципы ОС Linux, контейнеризации и сети
- Знаете C
Будет плюсом, если вы
- Работали над проектированием и разработкой распределённых сервисов
- Занимались многопоточным и асинхронным программированием
- Разбираетесь в теме построения облачных сервисов
- Владеете Go, C++ или Python (не обязательно знать все языки сразу)
Похожие вакансии
Опыт работы (в период с 01.07.2014 по н.в., стаж работы не менее 3-х лет) экспертом или...
Знакомы с паттернами проектирования систем и умеете их применять. - Уверенно пишите на Go или знаете другой язык и готовы перейти...
Языки программирования: JS/TS, SQL. Знание библиотеки React. Опыт работы со средой Node.js. Опыт работы фреймворком Electron. Опыт написания юнит...
Управленческий опыт: у вас за плечами успешный опыт управления редакцией или отделом контента (от 5 человек). Понимаете, как выстроить процессы...
Профильное образование по направлениям: радиотехника, радиоэлектроника, информатика, информационные технологии и т.п. Уверенное владение С++11/14/17, STL.
