Ведущий инженер-программист Linux

Требуемые навыки

Разработка ПОСтарший (Senior) · Linux · C++

Местоположение и тип занятости

Москва · Полный рабочий день

Компания

Международная компания, специализирующаяся на консалтинге, технологических услугах и аутсорсинге

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

Функциональные обязанности:

  • Работа в дружной команде разработчиков над следующими задачами
  • Разработка в основном на языке С++ для платформы embedded linux (ARM), используемой в GNSS приемниках компании Topcon
  • Анализ исходных требований, уточнение поставленных задач, разработка оптимальных решений, оценка трудоемкости
  • Разработка внутренней структуры ПО, добавление новой функциональности, поддержка существующего кода
  • Разработка приложений (сервисов) на языке С++, обеспечивающих функциональность устройства: файловое хранилище, networking (cellular, wifi, bluetooth, vpn, dyndns), automatic updates, iot и других.
  • Развитие командного интерфейса управления оборудованием для поддержки разнообразной внутренней и внешней периферии
  • Разработка подсистемы внутренней коммуникации как между сервисами, с другими аппаратными компонентами устройств и с внешними аппаратными устройствами по разным интерфейсам
  • Разработка программной платформы для обеспечения запуска сторонних приложений (plugins), включая подготовку SDK и документирование
  • И конечно же отладка и диагностирование дефектов от группы тестирования и пользователей

Обязательные требования:

  • Умение работать в команде в условиях коллективного владения кодом, аккуратность, ответственность, широкий кругозор
  • Нацеленность на долгосрочное сотрудничество
  • Высшее техническое образование
  • Опыт промышленной разработки на C++ от 5 лет
  • Умение разобраться в чужой архитектуре и чужом коде
  • Отличное знание языка C++, Стандартной библиотеки или библиотеки Boost, шаблонов С++.
  • Опыт разработки многопоточных приложений
  • Опыт оптимизации кода и анализа проблем в работе ПО на встроенных системах (отладка, профилирование, борьба с утечками памяти)
  • Опыт разработки ПО для Linux

Приветствуется:

  • Владение основными средствами разработки, контроля версий, issue-tracking, continuous integration, рефакторинга и контроля качества кода
  • Знание основных принципов построения архитектуры (coupling vs cohesion, композиция, наследование), знание принципов объектно-ориентированного программирования (SOLID)
  • Знание специфики работы с низкоуровневыми программистами и драйверистами
  • Опыт многоплатформенной разработки
  • Знание других систем других языков программирования (например, Python)

Условия:

  • Возможность профессионального и карьерного роста в компании, возможность поучаствовать в разных проектах;
  • Опыт работы в распределенной команде профессионалов;
  • Уровень заработной платы, соответствующий Вашим пожеланиям;
  • Бесплатные обеды в офисе компании;
  • Современная техника и рабочее место;
  • Работа в офисе (м. Павелецкая), помощь с переездом и проживанием при необходимости

Ваш отклик

Авторизуйтесь
Откликаться на вакансии могут только зарегистрированные пользователи.