Перейти к основному содержанию

C++ / Embedded Linux Developer

Technology
СКАЙРИС
Москва, Россия2 мес. назад

Описание вакансии

C / Embedded Linux Разработчик

Ищем C разработчика уровня Middle или Senior в команду разработки системного программного обеспечения для ARM-платформ под Embedded Linux.

Основные задачи связаны с разработкой и развитием сервисов и компонентов на C , многопоточностью, сетевым взаимодействием, IPC, интеграцией с аппаратными интерфейсами и диагностикой ПО непосредственно на целевых устройствах.

Рассматриваем кандидатов с разным уровнем опыта. Конкретный уровень позиции определяется по итогам технического интервью.

Задачи

  • Разработка и поддержка системных сервисов и компонентов на C 17/20.
  • Работа с многопоточностью, сетевым взаимодействием, IPC и потоками данных.
  • Интеграция программного обеспечения с Linux-окружением и аппаратными интерфейсами устройств.
  • Диагностика и устранение проблем со стабильностью, производительностью и корректностью работы ПО.
  • Отладка программного обеспечения на целевых устройствах.
  • Разработка unit-тестов.
  • Работа с существующей кодовой базой, участие в code review и развитии архитектуры компонентов.

Требования

  • Уверенное практическое знание C 17/20.
  • Понимание RAII, lifetime и ownership объектов, smart pointers, move semantics, STL и templates.
  • Опыт работы с многопоточностью: std::thread / std::jthread, mutex, condition variable, atomics.
  • Понимание типовых проблем многопоточного программирования: race condition, deadlock, корректное завершение потоков и сервисов.
  • Уверенная работа в Linux: процессы и потоки, signals, file descriptors, sockets, /proc, /sys, /dev.
  • Практический опыт диагностики и отладки сложных проблем с использованием GDB, core dumps, sanitizers, strace, системных логов.
  • Опыт работы с CMake, GCC/Clang, Git, unit tests.
  • Умение читать и анализировать существующий код, разбираться в архитектуре системы и аккуратно вносить изменения.

Будет преимуществом

  • Опыт разработки под ARM / Embedded Linux.
  • Опыт работы с TCP/UDP, sockets и сетевыми сервисами.
  • Опыт работы с IPC: D-Bus, shared memory, очереди сообщений.
  • Cross-compilation и разработка ПО для целевых устройств.
  • Buildroot или Yocto.
  • CI/CD, Python для утилит и автоматизации.
  • Опыт работы с GStreamer, FFmpeg, V4L2, DRM/KMS, ZeroMQ, OpenCV.
  • Опыт интеграции с сенсорами, видеооборудованием или другими аппаратными устройствами.
Опыт со всеми перечисленными технологиями не является обязательным. Для позиции важны сильная база в C и Linux, практический опыт решения системных задач и способность самостоятельно разбираться в существующем программном обеспечении.

Позиция не предполагает разработку Linux kernel drivers или BSP с нуля.

Условия

  • Оформление по ТК РФ.
  • Работа в оборудованном офисе.
  • Гибкое начало рабочего дня.
  • График работы 5/2.
  • Полный рабочий день.
  • Заработная плата — от 290 000 рублей в месяц, итоговый уровень обсуждается по результатам собеседования.

Задайте вопрос работодателю

Он получит его с откликом на вакансию Где располагается место работы? Какой график работы? Вакансия открыта? Какая оплата труда? Как с вами связаться? Другой вопрос

Где предстоит работать

Москва, Савёловская, Савёловская, Савёловская, Савёловская, Бутырская улица Показать на большой карте
Keywords
SOCKSBuildrootZeroMQSemaphoreLinuxStraceCMakeRace conditionC++PythonUnit TestingDeadlockGNU DebuggerCI / CDLinux kernelOpenCVClangDebuggerToolchainGit

Вас интересует эта вакансия?