Москва, Подсосенский переулок, 23с3
Привет! Компания VisionLabs является одним из лидеров рынка в области машинного обучения и компьютерного зрения. Сейчас мы ищем программиста на С++ для разработки подсистемы real-time анализа потокового видео с использованием алгоритмов машинного зрения.
С чем предстоит работать:
Высоконагруженная система видеоаналитики на С++ / CUDA с использованием последних достижений в области ML;
Разработка нативных модулей на С++ для видеоаналитики в Python.
Необходимый опыт и знания:
Высшее техническое образование;
Уверенное владение С++ на уровне Senior
Алгоритмы и структуры данных.
Паттерны разработки.
Параллельное программирование: потоки, процессы, примитивы синхронизации.
Понимание того, как работают GPGPU вычисления (CUDA / OpenCL)
Отличия CPU от GPU в модели многопоточности и взаимодействия с памятью.
Контексты, стримы (командные очереди), синхронизация на стороне Host и Device.
Опыт работы с библиотеками
OpenCV.
FFMpeg.
Опыт работы с системами сборки и зависимостей
Cmake.
Autotools.
Умения работать с системами контроля версий и CI / CD
Git.
Gitlab / GitHub
Плюсами будут:
Наличие opensource проектов, в которых можно посмотреть на ваш код.
Знание Python на уровне Junior или лучше.
Опыт работы с pybind11 или любой другой библиотекой для написания нативных модулей Python на C++.
Кругозор в области видео кодеков.
Кругозор в области системного дизайна и архитектуры ПО:
Функциональные и нефункциональные требования к ПО.
API и обратная совместимость, версионирование.
Отличия ABI от API.
Опыт работы с профилировщиками:
Intel VTune.
Nvidia Nsight Systems.
Valgrind.
Опыт работы с Conan.
Опыт работы с Docker.
Готовы предложить: