Computer Vision Engineer
Ми шукаємо C++ / Computer Vision Engineer для роботи над технологічним проєктом, для нашого замовника виробничої групи компанії яка працює в напрямку мілітарі сектору.
Офіс компанії знаходится в місті Дніпро. Розглядаємо різноманітні формати гібридної або віддаленої роботи для кандидатів в Україні.
Основний напрям роботи — розробка систем комп’ютерного зору та автономної навігації. Робота поєднує C++, Computer Vision, AI/ML, класичні алгоритми, математику та геометрію.
Для команди важливо не просто використовувати готові бібліотеки, а розуміти, як працюють алгоритми, чому вони дають певний результат та як реалізувати їх швидко й надійно.
Основні завдання:
- Розробка та реалізація алгоритмів для систем комп’ютерного зору та автономної навігації.
- Робота з відеопотоком та даними сенсорів.
- Розробка detection і tracking.
- Поєднання класичних алгоритмів із AI.
- Перенесення рішень на бортове hardware.
- Профілювання та оптимізація C++ коду.
- Пошук причин нестабільної роботи алгоритмів та їх усунення.
- Робота над алгоритмами, для яких готового рішення може не існувати.
Основні вимоги:
- Відмінне знання C++ та розуміння: STL, templates та generic programming, RAII, memory management, move semantics, multithreading та concurrency, low-level performance characteristics.
- Хороша алгоритмічна база: структури даних, пошук, графи, оптимізація, оцінка складності алгоритмів.
- Нормальна математична база — насамперед лінійна алгебра та геометрія.
- Розуміння векторів, матриць, систем координат, поворотів, 2D/3D перетворень.
- Практичний досвід із Computer Vision та OpenCV.
- Розуміння задач detection, tracking, motion estimation, optical flow, segmentation.
- Досвід або хороше розуміння роботи з відеопотоком у реальному часі.
- Вміння писати ефективний код і знаходити проблеми з продуктивністю через profiling.
- Розуміння multithreading та роботи з обмеженими ресурсами.
- Linux, Git, embedded.
AI / ML
AI буде важливою частиною проєкту, але позиція не передбачає роботу виключно з навчанням моделей.
Очікується розуміння того, як працюють сучасні моделі Computer Vision, як їх навчати, перевіряти та запускати в production.
Досвід із YOLO та подібними інструментами буде перевагою.
Особливо цінується здатність визначити, коли для вирішення задачі доцільно використовувати нейромережу, а коли простіший алгоритм буде швидшим та надійнішим.
Алгоритми та математика
Важливою частиною роботи буде самостійний аналіз складних задач, побудова математичних моделей та реалізація алгоритмів.
Буде корисним досвід із:
- Kalman Filter;
- state estimation;
- tracking;
- motion estimation;
- sensor fusion;
- coordinate transformations;
- camera geometry;
- numerical optimization.
Performance
Код має працювати на реальному бортовому hardware, тому важливо розуміти:
- де виникають зайві алокації;
- як працює cache та memory bandwidth;
- коли потрібна багатопоточність;
- де має сенс SIMD/GPU;
- як зменшити latency;
- як отримати стабільний FPS при обмежених ресурсах.
Досвід із ARM/ARM64, GPU, NPU, Vulkan або embedded Linux буде великою перевагою.
Буде плюсом:
- досвід із БпЛА, robotics або autonomous systems;
- thermal / IR Computer Vision;
- tracking малих або малоконтрастних об’єктів;
- camera calibration;
- відеостабілізація та motion compensation;
- sensor fusion;
- оптимізація inference на edge devices.
Кого ми шукаємо
Нам потрібен інженер із сильною інженерною та математичною базою, якому цікаво працювати зі складними алгоритмічними задачами, вміння мислити алгоритмами, розуміти математику та писати якісний C++ код.
Надсилаючи резюме, ви погоджуєтесь на обробку персональних даних відповідно до Закону України «Про захист персональних даних»
Отримання від громадян гонорару, комісійних або інших винагород за надання послуги з пошуку роботи та сприяння у працевлаштуванні, інших пов’язаних з цим послуг забороняється.
Відгукнутись на вакансію