улица Тази Гиззата 1
SMART FARM - это продуктовая IT-компания, создающая интеллектуальные решения в области искусственного интеллекта и компьютерного зрения, которые помогают автоматизировать процессы и анализировать данные из видеопотоков в реальном времени в сельскохозяйственном секторе.
Ищем в команду Computer Vision Engineer уровня middle, который хочет прокачаться на реальных задачах и внести вклад в развитие масштабируемого продукта.
Чем предстоит заниматься
-
Разработка, доработка и масштабирование инфраструктуры и микросервисов платформы компьютерного зрения для одновременной обработки десятков видеопотоков;
-
Проектирование и оптимизация high-load пайплайнов приема, декодирования, обработки и анализа видео в реальном времени на ограниченных аппаратных ресурсах;
-
Интеграция новых моделей CV в существующие продуктовые пайплайны с обеспечением требуемой пропускной способности и задержки;
-
Адаптация и оптимизация моделей для эффективного параллельного инференса (квантование, использование TensorRT/ONNX, настройка динамического батчинга);
-
Настройка и запуск inference-серверов (например, NVIDIA Triton) для эффективного обслуживания множества запросов;
-
Мониторинг, профилирование и обеспечение стабильности работы CV-сервисов под высокой нагрузкой;
-
Создание и поддержка технической документации, включая архитектурные решения для масштабирования;
Требования
-
Образование: Высшее (магистр/специалист) в области компьютерных наук, прикладной математики, робототехники или смежных областях;
-
Опыт работы: от 2-3 лет в области компьютерного зрения и машинного обучения;
-
Опыт разработки и поддержки микросервисной архитектуры для CV-сервисов (REST API/gRPC);
-
Опыт проектирования, запуска и оптимизации систем для параллельной обработки множества видеопотоков на одном сервере. Понимание ограничений и способов масштабирования в условиях ограниченных GPU/CPU ресурсов;
-
Знание контейнеризации (Docker) и оркестрации (Kubernetes);
-
Умение проектировать и оптимизировать высоконагруженные пайплайны обработки видео;
-
Опыт работы с системами очередей (RabbitMQ, Kafka, Redis) для балансировки нагрузки между видеопотоками;
-
Навыки мониторинга и профилирования для выявления "узких мест" в многопоточной среде (GPU/CPU utilization, memory leaks, I/O latency);
-
Умение "завернуть" модель в продуктивное приложение, оптимизированное для параллельной обработки;
-
Практический опыт оптимизации пайплайна "чтение кадра -> предобработка -> инференс -> постобработка" для минимизации задержек и максимизации пропускной способности (FPS) на сервере;
-
Опыт использования батчинга (dynamic batching), асинхронных вызовов и параллельных конвейеров для повышения утилизации GPU при работе с множеством потоков;
-
Опыт работы с высокопроизводительными библиотеками для обработки видео: FFmpeg (через ffmpeg-python или pyav), GStreamer;
-
Глубокие знания многопоточности и асинхронности в Python (asyncio, threading, multiprocessing), понимание GIL и способов его обхода (например, через процессы);
-
Опыт использования inference-серверов, специально разработанных для масштабирования: NVIDIA Triton Inference Server, TorchServe, TensorFlow Serving. Особенно ценен опыт с динамическим батчингом в Triton;
-
Навыки профилирования и отладки с помощью: NVIDIA Nsight Systems, py-spy, cProfile, vtune;
Ключевые навыки
-
Глубокое понимание классических и современных методов CV (детекция, классификация, сегментация, трекинг);
-
Опыт работы с фреймворками глубокого обучения: PyTorch (обязательно), TensorFlow/Keras;
-
Свободное владение Python и ключевыми библиотеками: OpenCV, NumPy, SciPy, Pandas;
-
Понимание принципов разработки ПО (ООП, Git, CI/CD) и многопоточного/асинхронного программирования;
-
Умение работать в команде и четко документировать результаты;
-
Системное мышление: Способность проектировать систему с учетом нагрузки, "бутылочных горлышек" и отказоустойчивости при работе с десятками/сотнями потоков;
-
Проактивность: Умение не только интегрировать модель, но и предложить архитектурные улучшения для масштабирования платформы;
-
Аналитический склад ума: Глубокий анализ производительности, умение читать метрики и быстро локализовать проблемы (например, падение FPS при добавлении N-го потока);
-
Готовность разбираться в низкоуровневых аспектах (кодеков, драйверов, сетевых протоколов) для решения задач оптимизации;
-
Ориентация на результат: Понимание ключевых метрик production-системы: сквозная задержка (end-to-end latency), общая пропускная способность (total throughput), стабильность работы 24/7;
Будет плюсом
-
Знакомство с облачными сервисами для работы с видео (Kinesis Video Streams, Azure Video Analyzer) и стримингом (WebRTC, RTSP, HLS);
-
Опыт настройки и оптимизации работы драйверов GPU (NVIDIA), CUDA, cuDNN для многопользовательской среды;
Что мы предлагаем
- Официальное трудоустройство;
- Все преимущества ИТ-компании (отсрочка, льготная it-ипотека);
- Участие в реальном AI-проекте;