👀 Дизайнеры, с какой командой вы мэтчитесь по вайбам? Проверяйте на Вайб-чеке→ vibe.habr.com

Разработчик встроенного ПО для проектов на ПЛИС/SoC

Зарплата

от 100 000 ₽

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

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

Компания

Информационная безопасность

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

Условия работы

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

  • Разработка ПО управления аппаратными компонентами SoC (драйверы для ОС Linux, для загрузчиков и baremetal);
  • Разработка системных сервисов (демонов) для встраиваемых и серверных вариантов ОС на базе ядра Linux;
  • Документирование своей работы (неформальная документация для дальнейшей переработки техническим писателем);
  • Написание тестов различного типа и уровня (модульные, интеграционные, системные, функциональных, нагрузочных и регрессионных) для программного обеспечения и аппаратных компонент (заказных СБИС, проектов на ПЛИС, специализированных ЭВМ и интерфейсных плат);
  • Оптимизация ПО по производительности, объему кода, пропускной способности, занимаемым ресурсам;
  • Разработка управляющего ПО для контроллеров в составе SoC;
  • Отладка интерфейса взаимодействия устройств на СБИС/ПЛИС и хоста под ОС Linux посредством высокоскоростных интерфейсов (PCIe, USB и т.д.).

Основные используемые инструменты:

  • cross, реже selfhosted gcс, иногда g++
  • git
  • rpm
  • gdb
  • немного python
  • остальные утилиты GNU Toolchain
  • отладчики с интерфейсом JTAG или аналогичными
  • осциллограф

Требуемые знания:

  • понимание архитектуры и принципов работы ОС на базе ядра Linux
  • понимание архитектуры и общих принципов работы загрузчиков SoC (u-boot и т.д.)
  • понимание (как минимум на уровне программиста) архитектуры и принципов работы внутренних шин современных SoC (AMBA, Avalon)
  • понимание (как минимум на уровне программиста) архитектуры и принципов работы современных высокоскоростных интерфейсов (PCIe, USB)
  • умение читать электрические схемы цифровых устройств
  • понимание принципов работы сложных подсистем ядра Linux, обслуживающих, например сетевые карты (управление очередями DMA дескрипторов, синхронизация, распределение функций между режимами прерывания, ядреной нитки, пользовательского процесса и т.д.).

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

  • отладка приложений с исходными кодами и без, с использованием gdb и gdb-сервера
  • cross-компиляция
  • разработка серверных приложений на С/С++ для Linux
  • поиск ошибок с использование отладчика JTAG или аналогов
  • применение осциллографа для анализа работы аппаратной платформы
  • (желательно) применение Signal tap и/или Chipscope для отладки проектов на ПЛИС
  • профилирование производительности программ и их оптимизация
  • профилирование использования памяти, оптимизация и устранение утечек
  • разработка драйверов пространства ядра под Linux

Важные качества:

  • обучаемость
  • желание осваивать новые технологии
  • исполнительность/обязательность
  • способность самостоятельно искать решения в том числе нестандартные
  • коммуникабельность

Бонусы

Условия:

  • оформление по ТК РФ
  • заработная плата (после вычета налогов), определяется по результатам собеседования;
  • возможна выплата премий по результатам работы;
  • опытный коллектив, широкие возможности профессионального роста;
  • возможность повышения квалификации на различных, в том числе и зарубежных курсах (оплачивается работодателем);
  • возможность посещения тематических конференций в России и за рубежом (оплачивается работодателем);
  • добровольное медицинское страхование (санчасть в 5 мин. пешком от работы);
  • возможность выделения времени для занятия спортом;
  • испытательный срок 3 месяца;
  • офис в районе м. Марьина Роща
  • полная занятость, полный день, режим гибкого рабочего времени