ML-разработчик в области CV
Зарплата
Требования
Местоположение и тип занятости
Компания
Описание вакансии
О компании и команде
Мы занимаемся разработкой open-source фреймворка компьютерного зрения Savant, позволяющего строить высокоэффективные, надежные системы видеоаналитики и CV и экономить средства на эксплуатации таких систем за счет оптимального использования возможностей железа и ПО NVIDIA.
Мы не только создаем сам продукт Savant и экосистему, но и оказываем консалтинговые услуги по разработке пайплайнов, миграции пайплайнов с других стеков, оптимизации вычислений за счет эффективных архитектурных решений, реализации различных эвристик и обучения эффективных моделей.
В рамках расширения команды мы ищем специалиста по компьютерному зрению, который присоединится к нам и будет участвовать в консалтинговых проектах и развитии экосистемы продукта.
Если Вы находитесь за пределами России - это преимущество, но не принципиальное.
Нас это точно заинтересует и выделит Вас:
- Вы стремитесь стать T/M-shaped персоной и понимаете зачем это (опишите в чем заключается ваше T/M в письме).
- Вы осознаете, что ландшафт в IT меняется драматически и большая часть труда скоро будет низкооплачиваемой из-за AI.
- Вы воспринимаете себя инженером-разработчиком, а не определяете себя через какую-то конкретную технологию.
- У Вас есть багрепорты в открытые продукты на GitHub или профильных форумах вендоров (присылайте ссылки).
- У Вас есть пул-реквесты в продукты с открытым кодом или свои продукты с открытым кодом, пусть даже совершенно небольшие, но актуально-поддерживаемые (присылайте ссылки).
- Вы знаете какой-то еще язык программирования и с удовольствием на нем что-то делаете, может быть изучаете для себя (Golang/Rust/Zig/C/C++).
- У вас есть статьи, выступления, консультации, коммьюнити (присылайте ссылки).
- Вы используете AI в своей деятельности и пытаетесь исследовать границы его применимости.
- Вы учитесь и за последние два года изучили что-то новое вне рабочего процесса (расскажите что).
- Вы оказались в IT до того времени, когда это стало модно или после профильного образования, не через курсы.
Ожидания от кандидата
Общее
Опыт: мы рассматриваем специалистов с опытом работы от 3х лет в организациях, профессионально занимающихся разработкой ПО.
Ваша деятельность будет преимущественно затрагивать:
- Основная активность. Участие в клиентских проектах с акцентом на эффективный инференс и утилизацию железа; мы фокусируемся на повышении производительности и отдаче от оборудования. Мы часто "упарываемся" по FPS и количестве параллельно обрабатываемых видео-потоков, сэмплировании и прочей черной магии. Для нас тренировка и выбор моделей зачастую неразрывно связаны с их производительностью. Вам это должно нравиться.
- Заполняющая активность. Разработка демок в рамках фреймворка Savant. Вот примеры демок, которые мы делаем для наших пользователей.
- Работа над фичами фреймворка в рамках улучшений и траблшутинг разных экзотических историй, которые происходят в рамках работы.
Ваша позиция подразумевает общение с пользователями:
- представители клиента в рамках коммерческих проектов;
- коммьюнити в Discord и GitHub.
Общение с клиентами и коммьюнити происходит на английском. Нам важно, чтобы Ваш письменный английский был B2 и выше. Разговорный - это отлично, но не обязательно, а вот умение писать и читать на английском и складно формулировать мысли - это обязательно. Мы делаем как дизайн-документы, так и отчеты, руководства на английском.
Технологии (критично):
- Python;
- NumPy (знание CuPy будет плюсом);
- Scikit, Pandas/Polars;
- PyTorch (знание Torch CUDA будет плюсом, знание Torch Audio тоже);
- OpenCV (опыт работы с OpenCV CUDA будет плюсом);
- ONNX Runtime;
- использование ноутбуков для работы с данными, изображениями, визуализация исследований данных;
- опыт работы с нейросетевыми моделями детекции, классификации, сегментации;
- опыт сбора и подготовки датасетов для тренировки нейросетевых моделей;
- опыт тренировки нейросетевых моделей;
- опыт работы с основными MOT;
- Docker (сборка образов, сборка композиций на базе Compose).
С чем мы работаем и что для нас будет ценно (будет плюсом):
- глубокое знание классических алгоритмов CV и понимание различных цветовых моделей;
- GStreamer (особенно, если умеете плагины писать на C/C++/Python или Rust);
- TensorRT (Python, C++);
- Nvidia DeepStream;
- Nvidia Triton inference server;
- CUDA computations;
- Nvidia CV-CUDA;
- Rust (Rust/Python interoperability на базе PyO3);
- C/C++ Python interoperability;
- Optical flow;
- Model pruning;
- Model quantization (int8, TensorRT);
- Visual object tracking;
- Protobuf, ZeroMQ, Etcd;
- Nvidia Jetson Orin inference;
- Понимание устройства видео-потоков кодированных в H264/HEVC, понимание чем контейнер видео отличается от кодированного видео;
- Понимание устройства RTSP-потока и принципа работы RTSP;
- Other edge inference (Rockchip NPU, Hailo).
Условия работы
- работа удалённо;
- рабочий день - 9 часов (включая 1 час на обед), возможность выстраивания гибкого графика работы;
- дружный нетоксичный коллектив с минимальной текучкой;
- оплачиваемый отпуск 20 рабочих дней;
- оплачиваемые больничные.
Дополнительные инструкции
Как попасть к нам в команду:
- Откликнуться на вакансию, прислать резюме;
- Пройти собеседование;
- Получить предложение.