Мы разрабатываем высоконагруженные системы видеонаблюдения и ищем опытного инженера-программиста для усиления команды, отвечающей за сетевую составляющую программного обеспечения. Наш продукт используется в критически важных инфраструктурах, где стабильность, низкая задержка и надёжная передача видеопотоков являются приоритетом №1.
Обязанности:
Разработка сетевого компонента ПО для системы видеонаблюдения;
Создание и поддержка SDK для интеграции функционала системы в сторонние проекты;
Проектирование, разработка и сопровождение библиотек для передачи больших объёмов потоковых данных в режиме реального времени;
Обеспечение проекта инструментальными средствами для анализа и мониторинга качества сетевых каналов (потери, джиттер, задержка);
Работа с чужим кодом: рефакторинг, расширение функциональности, устранение узких мест;
Участие в проектировании архитектуры сетевых модулей с учётом масштабируемости и отказоустойчивости.
Требования:
Опыт коммерческой разработки не менее 10 лет, из них не менее 5 лет — в области сетевого программного обеспечения;
Уверенное владение одним из языков кроссплатформенной разработки: C++, C#, Java или Objective-C;
Глубокое понимание принципов ООП и шаблонов проектирования;
Опыт разработки и поддержки библиотек и SDK;
Практический опыт работы с видеопотоками, RTSP, RTP/RTCP, H.264/H.265;
Знание сетевых протоколов (TCP/IP, UDP, HTTP, RTSP и др.) на уровне реализации и отладки;
Умение использовать инструменты для анализа сетевого трафика (Wireshark, tcpdump и аналоги);
Умение читать чужой код и эффективно работать с ним;
Технический английский — уверенный уровень чтения документации и спецификаций.
Будет плюсом:
Опыт разработки драйверов или работы на уровне ядра ОС;
Знание особенностей работы с мультимедийными фреймворками (GStreamer, FFmpeg и др.);
Опыт работы во встроенных средах или в условиях ограниченных ресурсов.
Ждем тебя в нашу надежную команду!