Senior Firmware / Low-Level Software Developer
Описание
Компания RedLab ищет опытного разработчика системного программного обеспечения для работы над низкоуровневыми компонентами вычислительных платформ. Проект предполагает развитие и поддержку программных решений, обеспечивающих взаимодействие аппаратных компонентов, управление ресурсами оборудования и выполнение базовых функций вычислительных систем на ранних этапах их работы.
Чем предстоит заниматься: Разрабатывать и модернизировать низкоуровневые программные компоненты на C. Поддерживать и развивать существующую кодовую базу для различных аппаратных платформ. Работать с механизмами инициализации оборудования и взаимодействия программного обеспечения с аппаратными компонентами. Анализировать особенности аппаратных архитектур и учитывать их при реализации программных решений. Исследовать и устранять ошибки на уровне взаимодействия программного и аппаратного обеспечения. Подготавливать и поддерживать техническую документацию.
Что важно для нас: От 7 лет опыта системной разработки на C. Глубокое понимание архитектуры процессоров x86/x86-64 (AMD64) и устройства современных вычислительных платформ. Знание принципов взаимодействия операционной системы с аппаратными компонентами, включая процессор, чипсет и периферийные устройства. Практический опыт Embedded-разработки и Bare-metal программирования, работы с оборудованием без использования полноценной операционной системы. Уверенное владение методами низкоуровневой разработки и отладки на границе программного и аппаратного уровней. Умение читать электрические принципиальные схемы и использовать аппаратную документацию при разработке ПО. Технический английский на уровне свободного чтения спецификаций и документации. Навыки систематизации технической информации и качественного документирования программных решений.
Будет преимуществом: Опыт программирования на Assembler, анализа машинного кода и Reverse Engineering для архитектуры x86. Практический опыт работы с UEFI, BIOS и другими компонентами платформенного ПО. Разработка низкоуровневых драйверов для Linux, Windows и других операционных систем. Понимание устройства и опыт программного взаимодействия с аппаратными интерфейсами PCI/PCIe, I2C, SMBus, SPI, LPC, USB. Опыт использования инструментов управления разработкой и технической документацией, включая Jira, Confluence и аналогичные системы. Широкая техническая экспертиза в области аппаратных архитектур, системного программирования и встроенного ПО.
Мы предлагаем полностью удаленный формат, стабильный долгосрочный проект с современным стеком технологий.
Как откликнуться: Пишите @julliia_v с пометкой на вакансию С developer в начале сообщения.
