← Усі вакансії

Embedded / Flight Software Engineer (Ada/SPARK інженер)

FOP Lavriv
Місто:
Івано-Франківськ
Джерело:
jobs.dou.ua
Відгукнутись на вакансію →

Ви станете основою команди розробки бортового програмного забезпечення (Flight Software), відповідальним за створення flight-critical коду (DAL A/B за DO-178C). Ваша роль — розробка ядра безпеки системи: контурів автоматичного керування, систем обробки критичних відмов та драйверів для високонадійних апаратних вузлів.

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

1. Розробка Flight-Critical коду та сенсорна фузія (Ada/SPARK):

Написання детермінованого коду для контурів керування (PID-регулятори, комплементарні фільтри, фільтри Калмана) мовою Ada.

Математичне моделювання та реалізація обчислень просторової орієнтації об’єкта (лінійна алгебра, кватерніони) з використанням фіксованої крапки (fixed-point) або строго типізованої плаваючої крапки.

Обробка та сенсорна фузія даних з критичної бортової периферії: IMU, GPS, барометрів, магнітометрів.

Розробка логіки ізоляції та обробки критичних апаратних відмов (Fail-Safe / Fail-Operational режими).

2. Формальна верифікація та контрактне програмування (SPARK):

Застосування SPARK для формального доведення коректності коду.

Проектування архітектури за принципами контрактного програмування: опис перед- та післяумов (pre/postconditions), а також інваріантів типів (type invariants).

Математичне доведення відсутності помилок часу виконання (Division by zero, Buffer Overflow, Array Index out of bounds) за допомогою ста can-аналізатора GNATprove.

3. Архітектура реального часу та обмежені профілі рантайму:

Робота з детермінованими профілями рантайму (зокрема Ravenscar або light-tasking).

Налаштування та оптимізація планувальників завдань, глибоке розуміння того, чому обмеження динамічної пам’яті та складності тасок необхідні для передбачуваного аналізу планувальника (WCET / worst-case execution time).

4. Низькорівнева розробка та інструментарій (Toolchain):

Розробка низькорівневих драйверів для апаратних вузлів через інтерфейси SPI, I2C, UART, CAN / CAN FD з використанням засобів специфікації представлення даних в Ada (Representation clauses) для точного мапінгу регістрів.

Робота з екосистемою: компилятор GNAT (arm-eabi), менеджер пакетів Alire (gnat_arm_elf), система збірки gprbuild та використання/адаптація компонентів Ada Drivers Library.

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

Досвід розробки на Ada/SPARK від 2 років АБО сильний C/C++ Embedded інженер (3+ роки) з вираженим формально-математичним мисленням, чистим кодом (розумінням MISRA) та експертною готовністю повністю перейти на Ada/SPARK.

Глибоке розуміння вбудованих систем: архітектура ARM Cortex-M/R, робота з регістрами, DMA, перериваннями та таймерами.

Знання вищої математики (особливо матричного числення та теорії керування). ● Буде вагомим плюсом: Знайомство зі стандартами функціональної безпеки та процесами сертифікації (DO-178C, EN 50128 або ISO 26262), досвід проходження аудитів ПЗ.

Схожі вакансії

З блогу Trackr

Усі статті →

Знайдено через trackr.help/jobs · Канал: @trackrhelp · Бот для персональних сповіщень: @trackrhelpBot