Real-Time Video Streaming Developer — Россия, Москва
Зарплата не указана
ОткликнутьсяОбязанности
• Развивать медиасервер для видеокомнат на Node.js, TypeScript и mediasoup, а также сервис записи на GStreamer и FFmpeg;
• Поддерживать передачу медиа через WebRTC, сигнализацию по WebSocket и API на Fastify;
• Анализировать качество звонков: задержку, RTT, jitter, потерю пакетов, битрейт, FPS и работу кодеков;
• Развивать адаптацию видеопотоков к качеству сети и возможностям устройств участников, включая выбор качества и слоёв видео;
• Исследовать проблемы со звуком, в том числе влияние шумоподавления на качество речи;
• Обеспечивать работу звонков в разных сетях: передачу медиа по UDP и резервное подключение через TCP/TLS и TURN при сетевых ограничениях;
• Находить ограничения производительности больших комнат на стороне сервера и клиентов, проводить нагрузочные испытания;
• Повышать надёжность записи: разбирать рассинхрон аудио и видео, потерю фрагментов и сбои обработки; поддерживать загрузку записей в S3-совместимое хранилище;
• Развивать отказоустойчивость сервисов: обеспечивать восстановление после сбоев и бесшовное обновление без прерывания активных звонков и записей;
• Писать тесты и поддерживать запуск сервисов в Docker.
Требования
• Уверенный опыт серверной разработки на Node.js и TypeScript;
• Практический опыт с WebRTC и понимание SDP, RTP и RTCP;
• Опыт работы с mediasoup или другим SFU-медиасервером;
• Понимание ICE, STUN/TURN и прохождения NAT, умение диагностировать проблемы подключения в корпоративных и ограниченных сетях;
• Понимание UDP и TCP и их влияния на задержку и качество медиапотоков.
• Понимание того, как кодеки, разрешение, FPS и битрейт влияют на качество, задержку и нагрузку;
• Опыт обработки аудио и видео с помощью FFmpeg и/или GStreamer;
• Опыт работы с Docker и автоматизированными тестами.
Будет плюсом
• Опыт разработки сервисов записи звонков или видеоконференций;
• Знание Opus, VP8, VP9 и H.264;
• Опыт работы с simulcast, SVC, адаптивным выбором качества видео, NACK и FEC;
• Понимание архитектур SFU и MCU и способов масштабирования групповых звонков;
• Опыт настройки и эксплуатации TURN-серверов, например coturn;
• Опыт построения отказоустойчивых сервисов с обновлением без остановки активных сессий;
• Опыт работы с S3-совместимыми хранилищами и нагрузочного тестирования WebRTC-сервисов.
Условия: • Аккредитованная IT компания;
• Насыщенная корпоративная жизнь: хакатоны, корпоративные игры, выезды на природу;
• Корпоративная библиотека для повышения hard и soft skills;
• Внутренние обучения (имеем свою Академию GreenData) и возможность оплаты внешних обучений;
• Социальный пакет; ДМС, английский язык;
• Оформление по ТК РФ;
• Конкурентная з/п по результатам собеседования.