Разработчик встроенного ПО для проектов на ПЛИС/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 месяца;
- офис в районе м. Марьина Роща
- полная занятость, полный день, режим гибкого рабочего времени