Видеострим-инженер (Low-Level RTSP & Cloud Storage)

#Вакансия : C++

📍 Задачи:

  • Поддержка и эволюция существующего C++ видеостримера (≈80 К строк).
  • Разработка новых модулей
  • Оптимизация I/O-пути: mmap/zero-copy, асинхронный I/O, GPU-ускорение (NVENC/NVDEC, VA-API).
  • Разработка системы unit/integ тестов (GTest, Catch2, pcap, fakestream).
  • Участие в выборе архитектурных решений
  • Взаимодействие с DevOps (k8s, Helm, GitHub Actions) для CI/CD и observability (Prometheus, Grafana, Loki, Jaeger).

🖥 Ключевые требования:

Язык и инструменты: Уверенное владение C++ 17/20: современные идиомы (RAII, move-семантика, шаблоны, STL, std::async), а также Boost.Asio. Умение работать с clang/gcc и отлаживать код в GDB или LLDB.

Мультимедиа. Опыт с FFmpeg (libavformat/libavcodec) или GStreamer, понимание основ DSP и контейнеров MPEG-TS/MP4/CMAF.

Сетевые протоколы. Понимание и знание RTSP/RTP/RTCP, TCP/UDP, HTTP 2/3, WebSocket, QUIC; понимание принципов NAT и механизмов STUN/TURN.

Хранилища. Работа с S3 API (AWS SDK C++ или boto3), multipart-загрузка.

ОС и производительность. Умение писать высокопроизводительные сервисы под Linux, используя epoll/io_uring, NUMA, hugepages, многопоточность (std::thread и C++-корутины) и методики профилирования памяти/CPU.

Cloud & DevOps. Навыки контейнеризации в Docker, оркестрации в Kubernetes c Helmy; конфигурация CI/CD в GitHub Actions или GitLab CI.

Софт-скиллы. Умение быстро погружаться в чужой код, отстаивать архитектурные решения.

Оплата: от 200 000 в месяц, детальнее по итогам собеседования

🟠 О проекте:

QMonitoring — российский облачный комплекс компьютерного зрения, который в реальном времени анализирует видеопотоки с IP-камер на стройплощадках: система распознаёт 20 видов строительной техники, пять типов маркировки персонала, два класса средств индивидуальной защиты, фиксирует нарушения безопасности, дым/пожар, простои техники и отсутствие прироста работ, а результаты хранит, обрабатывает и визуализирует в веб-интерфейсе.

Мы строим систему, которая в режиме 24/7 собирает видеопотоки с IP-камер на стройплощадках, хранит их в облачном S3-репозитории и обеспечивает мгновенный просмотр «живого» и архивного видео через единый веб-интерфейс (Web/HLS/DASH).

Внутренним «сердцем» решения является низкоуровневый видеостример на C++, который:

  • принимает RTSP/RTP-потоки с камер;
  • выполняет демультиплексирование, декодирование/транскодирование (H.264/H.265, AAC, Opus);
  • буферизует и отдаёт фрагменты приложениям (WebSocket, HLS/DASH, gRPC);
  • взаимодействует с S3-хранилищем (AWS, MinIO, Ceph) для записи и чтения архива;
  • гарантирует <1 с latency при просмотре live-видео и <100 мс TTFB при запросе архива.

Мы ищем человека, который мог бы присоединиться к проекту: развивать функционал, оптимизировать производительность, внедрять новые форматы и протоколы.