Обязанности:
ПРОЕКТ: Задачи связанные с C/C++, Linux, Web back-end, system development/maintenance. ЧТО МЫ ОЖИДАЕМ ОТ КАНДИДАТА: Умение работать в команде в условиях коллективного владения кодом, аккуратность, ответственность, инициативность, широкий кругозор. Способность слушать и аргументированно доносить свои идеи и мысли. Нацеленность на долгосрочное сотрудничество. Высшее техническое образование. Знание английского языка (для письменного общения на технические темы). Знание языка C/C++, Стандартной библиотеки или библиотеки Boost, шаблонов С++. Владение основными средствами разработки, контроля версий, issue-tracking, continuous integration, рефакторинга и контроля качества кода. Умение разобраться в чужой архитектуре и чужом коде. Опыт разработки многопоточных приложений. Опыт разработки С++ от 3-5 лет. Опыт оптимизации кода и анализа проблем в работе ПО на встроенных системах (отладка, профилирование, борьба с утечками памяти). Опыт разработки и конфигурации ПО для Linux. БУДЕТ ПЛЮСОМ: Знание основных принципов построения архитектуры (coupling vs cohesion, композиция, наследование), знание принципов объектно-ориентированного программирования (SOLID). Знание специфики работы с низкоуровневыми программистами и драйверистами. Опыт многоплатформенной разработки. ЧЕМ ПРЕДСТОИТ ЗАНИМАТЬСЯ: Работа в дружной команде разработчиков над следующими задачами. Разработка в основном на языке С++ для платформы embedded linux (ARM), используемой в GNSS приемниках. Анализ исходных требований, уточнение поставленных задач, разработка оптимальных решений, оценка трудоемкости. Разработка внутренней структуры ПО, добавление новой функциональности, поддержка существующего кода. Разработка приложений (сервисов) на языке С++, обеспечивающих функциональность устройства: файловое хранилище, networking (cellular, wifi, bluetooth, vpn, dyndns), automatic updates, iot и других. Развитие командного интерфейса управления оборудованием для поддержки разнообразной внутренней и внешней периферии. Разработка подсистемы внутренней коммуникации как между сервисами, с другими аппаратными компонентами устройств и с внешними аппаратными устройствами по разным интерфейсам. Разработка программной платформы для обеспечения запуска сторонних приложений (plugins), включая подготовку SDK и документирование. И конечно же отладка и диагностирование дефектов от группы тестирования и пользователей. МЫ ПРЕДЛАГАЕМ: Возможность участия в интересных проектах. Возможность профессионального и карьерного роста в компании. Опыт работы в команде профессионалов. Уровень заработной платы обсуждается индивидуально. Специальные тарифы для сотрудников в спортивные клубы и языковые курсы и пр. Офисный (возможно гибрид) формат работы в Москве. Также есть вариант с удаленным форматом.