Бэлл Интегратор

Разработчик C++ ( Embedded Linux)

Не указана
  • Минск
  • Полная занятость
  • Полный день
  • От 3 до 6 лет
  • C++
  • Linux
  • ООП
  • Embedded linux
  • Английский — C1 — Продвинутый

Bell Integrator – один из ведущих системных интеграторов страны. Мы аккредитованная ИТ-компания и являемся частью большой семьи ГК Softline. Bell Integrator активно реализует проекты по всей России, среди наших заказчиков – крупнейшие системообразующие финансовые, телеком и ритейл компании страны.

Проект/команда:

1. Адаптер программного API и аппаратного API. Данная разработка является кроссплатформенной, в частности под Linux и RTOS (FreeRTOS или Zephir). В рамках данного проекта потребуется запуск как существующих реализаций функционала, написанных под другую RTOS (RTEMS), так и написание нового функционала. Данное решение предоставляет базовый GNSS функционал и является основой для всех GNSS приемников, которые разрабатываются в компании.

2. Проект нового геодезического приемника. В рамках данного проекта много задач как прикладного уровня (WEB интерфейс, работа с файлами и пр.), так и системных задач (система обновления, поддержка USB, SD, Cell, WiFi, BT, BLE, UART, поддержка и развитие функциональности загрузчика (UBOOT)). Разработка ведется с использованием Yocto. В качестве одной из подсистем выступает адаптер программного и аппаратного API из п.1.

3. Проект новых OEM GNSS приемников. В основу данного проекта заложен проект адаптера программного и аппаратного API (из п.1), портированного под данную платформу. В рамках данного проекта также много задач как прикладного уровня, так и системных задач (система обновления, поддержка USB, SD, UART, поддержка и развитие функциональности загрузчика (UBOOT)). Разработка ведется с также использованием Yocto.

Требования:

  • Высшее образование в области программного обеспечения, электроники, компьютерной инженерии или смежных областях

  • Опыт разработки приложений для Embedded Linux не менее 3-5 лет

  • Уровень английского языка выше среднего

  • Понимание спутниковой навигации или автоматизации строительной техники

  • Знание ключевых принципов проектирования архитектуры (сцепление против когезии, композиция, наследование), а также понимание принципов объектно-ориентированного программирования (SOLID).

  • Всестороннее понимание методов и теорий разработки объектно-ориентированных и сервис-ориентированных приложений, сетевых протоколов и принципов.

  • Опыт работы в команде с низкоуровневыми разработчиками, разработчиками драйверов, разработчиками RTOS и проектировщиками схем.

  • Опыт низкоуровневой разработки для Linux (модули ядра и драйверы).

  • Опыт конфигурирования Linux под требования реального времени.

  • Опыт сборки встраиваемых систем linux (yocto, buildroot)

  • Опыт работы с функциями загрузчика (u-boot).

  • Опыт работы с сетевыми протоколами и функциями, включая REST, HTTPS, UDP, TCP, FTP, SNMP и IPv6.

  • Опыт работы с pppd, сотовыми модемами 4G, eSIM/LPA.

  • Опыт работы с Bluetooth/BLE.

  • Опыт внедрения или разработки протоколов передачи данных.

  • Опыт разработки API с документацией.

  • Опыт оптимизации кода и устранения проблем с программным обеспечением во встраиваемых системах (отладка, профилирование, обнаружение утечек памяти).

Обязанности:

  • Разработка и поддержка встроенной платформы на базе Linux и сопутствующих сервисов для устройств компании

  • Разработка и поддержка сервисов (приложений) для встроенной платформы, в частности, для беспроводной связи, работы в сети, файловых систем и регистрации сырых данных GNSS, API управления устройствами (командный интерфейс), интеграция UHF/FH радио, поддержка шины CAN и многое другое.

  • Анализ требований, уточнение поставленных задач, оценка усилий, разработка оптимальных решений

  • Создание и разработка образов системы с использованием yocto, конфигурирование дерева устройств

  • Поддержка инструментария, обновление библиотек и поддержка непрерывной интеграции

  • Разработка подсистемы обновления прошивки, включая OTA.

  • Диагностика проблем в сотрудничестве с инженерами HW, инженерами-производителями, командами тестирования и поддержки продукции.

  • Поддержка команд по производству и тестированию продукции.

  • Работа с разработчиками Linux-систем и драйверов для предоставления конечным пользователям API и сервисов для периферии в соответствии с техническими требованиями.

Условия:

  • Возможность профессионального и карьерного роста в компании, возможность поучаствовать в разных проектах;

  • Опыт работы в распределенной команде профессионалов;

  • Уровень заработной платы обсуждается индивидуально

  • Формат работы: офис или удаленно(обсуждается)