Старший бэкенд-разработчик в Медиаплатформу

Яндекс · Москва, Санкт-Петербург · по договорённости

Компания
Яндекс
Город
Москва, Санкт-Петербург
Зарплата
по договорённости
Уровень
middle
Формат
гибрид

Наша платформа — часть Yandex Infrastructure. Мы помогаем доставлять аудио и видео таким продуктам, как звонки в ЯСим, Алиса, Телемост, Автономный транспорт и многим другим.

Сейчас мы ищем Go-разработчика, чтобы увеличить объём выпускаемых фич для Автономного транспорта. Это будет основным, но не единственным направлением работы для вас в нашей команде.

Это важно потому, что Автономный транспорт работает с очень сложными сетевыми условиями. Не с классическими видеозвонками, а с ситуациями, когда задержка в 150 мс — это метры пути, потеря нескольких кадров, слепая зона, а деградация канала LTE/5G посреди перекрёстка или пробки — штатный, а не исключительный случай. Мы проектируем стек, который остаётся управляемым и предсказуемым в реальном мире мобильных сетей.

Что предстоит делать:
Проектирование и развитие медиасервера на Go

Вам нужно будет строить систему, которая принимает множественные видеопотоки с камер по протоколам WHIP/WHEP и управляет ими. Это высоконагруженный сервис, где важна каждая миллисекунда.

Построение низколатентного обратного канала управления

Через WebRTC Data Channel (SCTP) нужно передавать команды и телеметрию с гарантиями по порядку и срокам доставки. Вам предстоит определить, как система общается с устройствами в реальном времени.

Качество передачи видео

Вы будете работать с механизмами, которые напрямую влияют на пользовательский опыт: bitrate/congestion control (GCC), NACK/RTX, FEC, keyframe-запросы (PLI/FIR) и jitter-buffer-стратегии. Главный приоритет — низкая задержка, а не плавность.

Управление ICE/STUN/TURN в мобильных сетях

Вам предстоит обеспечивать стабильную работу при смене вышек сотовой связи, быстрый ICE restart, приоритизацию путей и bonding нескольких SIM-каналов. Это задача, где сетевые условия меняются каждую секунду.

Построение наблюдаемости и обеспечение надёжности

Вам нужно будет создать систему сбора RTCP/getStats, метрик задержки glass-to-glass и алертинг на деградацию канала. Также предстоит продумать graceful failover сессий и поведение системы при полной потере связи.

Больше о том, как мы делаем внутреннюю инфраструктуру Яндекса, — в канале Yandex Infrastructure

Требования:
• Уверенно владеете Go: конкурентность (Goroutines/Channels/Context), профилирование, работа с сетью и бинарными протоколами
• Имеете практический опыт работы с WebRTC/SIP/RTSP: понимаете SDP-переговоры, ICE, DTLS-SRTP, RTP/RTCP (не на уровне «поднял пример», а на уровне отладки)
• Понимаете транспортный уровень: UDP, TCP, TLS, поведение под потерями и джиттером; умеете читать и интерпретировать pcap
• Имеете опыт эксплуатации сервисов под нагрузкой (метрики, трейсинг, разбор инцидентов)
• Обладаете базовыми знаниями Kubernetes

Будет плюсом:
• Получили профильное образование по математике, обработке сигналов или сетям
• Работали с мобильными сетями (LTE/5G), multipath, QUIC
• Имеете опыт работы именно с pion/webrtc (или его подпроектами: pion/ice, pion/rtp, pion/sctp, pion/interceptor) и WHIP/WHEP
• Знаете congestion control (GCC, BBR), FEC, simulcast/SVC изнутри
• Умеете работать с realtime-системами, где задержка критична (телеуправлением, робототехникой, стримингом, VoIP, облачным геймингом)
• Знаете кодеки (H.264/H.265/AV1, аппаратное кодирование), понимаете trade-off latency vs quality

О команде:
Почему в нашей команде интересно:

• Измеримая, физическая ответственность вместо абстрактных метрик.
• Задачи, которых нет в стандартном WebRTC-стеке: они ломают привычные предположения о том, что «плавность важнее задержки».
• Работа с открытым стеком: не «чёрный ящик» SFU, а Pion, который можно читать, править и дополнять под свои требования.
• Взаимодействие с железом и реальным миром: не сферический трафик, а LTE на трассе, туннели, хэндоверы между вышками.

Открыть и откликнуться →

Отклик ведёт на сайт работодателя. Бесплатная регистрация открывает отклик и разбор резюме.

Многих вакансий каталога нет на агрегаторах

10500+ вакансий от 1600+ компаний — в основном напрямую с карьерных сайтов и из Telegram-каналов. У 900+ из них есть контакт нанимающего: пишешь человеку, а не в общую очередь. Регистрация бесплатная — откроет контакты и подбор вакансий под твоё резюме.