Job: Матиматик-програміст (Алгоритми, навігація та сенсорна фузія)

  • Location:

    Ukraine, Ivano-Frankivsk

Ви станете головним математичним архітектором системи, відповідальним за те, як апарат (БПЛА, робот або авіоніка) сприймає навколишній світ та реагує на нього. Ваша задача — розробка високонадійних алгоритмів фільтрації, навігації та автоматичного керування. 

Ключові обов'язки та задачі: 

1. Теорія керування та алгоритми стабілізації: 

  • Розробка, синтез та налаштування законів автоматичного керування (PID-регулятори, LQR/MPC або адаптивні системи) для динамічних об'єктів. 
  • Проектування логіки поведінки системи в просторі, забезпечення стійкості та точності виконання польотних/рухових місій. 

2. Сенсорна фузія та оцінка стану (Estimation): 

  • Розробка алгоритмів комплексування даних (сенсорної фузії) для точного визначення орієнтації, позиції та швидкості об'єкта на основі даних з IMU, GPS, барометра та магнітометра. 
  • Проектування та реалізація адаптивних фільтрів: від комплементарних фільтрів для низько обчислювальних вузлів до Розширеного/Сигма-точкового фільтра Калмана (EKF / UKF). 

3. Математичне моделювання та оптимізація: 

  • Побудова кінематичних та динамічних моделей систем з використанням лінійної алгебри та кватерніонів (для коректного опису тривимірного простору без сингулярностей). 
  • Адаптація математичного апарату під обмеження мікроконтролерів (MCU): аналіз та вибір між обчисленнями у floating-point та оптимізованою fixed-point арифметикою для мінімізації часу виконання та затримок. 

4. Прототипування та підготовка до крос-платформної інтеграції:

  • Швидке прототипування, симуляція та перевірка гіпотез у середовищах Python (NumPy, SciPy) або MATLAB/Simulink. 
  • Оформлення алгоритмів у вигляді чистих специфікацій або високорівневого коду (C++ / Rust) з подальшим співавторством у переносі та верифікації цих алгоритмів в Ada/SPARK (разом із інженером критичного контуру). 

Профіль кандидата: 

  • Вища освіта в галузі прикладної математики, кібернетики, системного аналізу, робототехніки чи авіаційних систем. Глибоке розуміння фізики процесів. 
  • Досвід у розробці алгоритмів керування (Guidance, Navigation, and Control — GNC) або систем оцінки стану (State Estimation). 
  • Експертне володіння Python або MATLAB для моделювання. 
  • Досвід написання production-коду на C++ або Rust.

Великим плюсом буде: 

  • Розуміння концепцій контрактного програмування, що полегшить портування алгоритмів на Ada/SPARK. 
  • Чітке уявлення про те, як працюють цифрові датчики (шуми, дискретизація, затримки шин SPI/I2C), а також розуміння концепції детермінізму та жорстких дедлайнів у RTOS системах


Upload resume file