14 декабря 2025
Мы создаём современный мессенджер для онлайн-общения с фокусом на высокое
качество звука и видео в реальном времени. Наша цель обеспечить стабильную и
естественную коммуникацию между пользователями при минимальных задержках и
максимальной эффективности использования ресурсов.
Основные задачи:
Разработка и оптимизация модулей обработки аудио/видео в реальном времени
(звонки, конференции, стриминг);
Проектирование и реализация многопоточной архитектуры для обработки
потоков данных с минимальной задержкой;
Работа с сетевыми аспектами real-time мультимедиа: передача потоков,
буферизация, компенсация джиттера, packet loss recovery;
Реализация кодеков, микширования, ресемплинга, синхронизации аудио и
видео;
Интеграция библиотек уровня WebRTC, FFmpeg, GStreamer или собственных
решений;
Профилирование и оптимизация производительности под real-time ограничения.
Что важно:
1. Профессионализм в C++
Глубокое понимание архитектуры, работы с памятью, многопоточности и
синхронизации данных(std::thread, mutex, atomics, lock-free структуры, thread
pools);
Отличное владение C++17: современные практики, шаблоны,
метапрограммирование, RAII, move semantics, constexpr и т.д.;
Опыт проектирования чистых и надёжных API, модульной архитектуры,
кроссплатформенных решений;
Опыт работы с Boost (особенно Asio, Smart Pointers, Optional, Variant, Thread,
Lockfree) как показателем широкого владения экосистемой C++;
Внимательность к деталям, умение балансировать между производительностью
и читаемостью кода.
2. Real-time multimedia (особенно аудио)
Понимание принципов обработки аудио/видео в реальном времени: потоки,
фреймы, сэмплы, буферизация, задержки, джиттер;
Опыт работы с FFmpeg, libWebRTC, PortAudio, GStreamer, Opus или
аналогичными библиотеками;
Знание базовых принципов кодирования, синхронизации, микширования и
ресемплинга;
Понимание особенностей работы мультимедиа на разных платформах
(Windows, Linux, Android, iOS).
3. Сетевое взаимодействие в контексте мультимедиа
Понимание сетевых протоколов UDP, RTP, RTCP, ICE, STUN, TURN;
Знание принципов QoS, адаптивного битрейта, jitter buffer, packet loss
concealment;
Опыт работы с низкоуровневыми сокетами и event loop ами
(например, Boost.Asio).