Привет! На связи команда Флиппер.
Мы создатели Флиппер Зеро — портативного девайса для техноэнтузиастов и инженеров. Это гаджет с крутейшим сообществом, объединяющим миллионы людей по всему миру
Сейчас мы активно работаем над нашим новым продуктом — Флиппер 1. Это полнофункциональный ARM-компьютер на базе Linux в компактном форм-факторе. В его основе — SoC Rockchip RK3576
Так как это встраиваемая система, мы не хотим полагаться на классические системы обновления вроде Debian APT.
Сейчас нам нужен Linux Engineer, который будет помогать нам в разработке Флиппер 1.
Задачи, с которыми предстоит работать:
- Поднимать, настраивать и поддерживать тестовые сборки Linux для проверки функционала, отладки и внутреннего использования команды.
- Разбираться в конфигурации Linux user-space на embedded Linux устройствах: графика, звук, стартовые скрипты, системные сервисы и прочие системные компоненты.
- Диагностировать проблемы в работе системы и прикладного окружения: находить, на каком уровне ломается поведение, локализовывать причину и предлагать временные и долгосрочные решения.
- Писать и дорабатывать Bash/Python-скрипты для автоматизации, настройки системы, генерации конфигов и реализации недостающего сервисного функционала.
- Помогать с первичной наладкой прошивки embedded Linux устройств на стыке системного администрирования и firmware integration.
- Участвовать в отладке и настройке различных подсистем Linux-устройства: графики, аппаратного ускорения видео, сетевых режимов и сервисов, а также других user-space и system-level компонентов, влияющих на работу устройства.
- Разбираться в широком спектре системных сценариев: от проблем в display/video pipeline до настройки сетевого поведения устройства в режимах роутера, бриджа, точки доступа, promiscuous mode/sniffer и других.
- Составлять понятные и технически грамотные bug report’ы, а также подбирать workaround’ы, которые можно оперативно встроить в систему или в установочные/служебные скрипты.
- Дорабатывать установочные и загрузочные сценарии: например, расширять меню загрузки, добавлять новые опции и интегрировать готовые Device Tree overlays.
- Работать в тесной связке с инженерами, ускоряя отладку и доведение Linux-сборок до рабочего состояния.
- Взаимодействовать с open-source проектами: готовить изменения к отправке upstream, оформлять pull request’ы, декомпозировать правки на понятные части, описывать их и участвовать в обсуждении с внешними maintainers.
- Искать решения не только внутри продукта, но и на уровне внешних зависимостей и open-source компонентов, с которыми работает система.
Твои скиллы:
- Хорошее понимание того, как устроены современные Linux-дистрибутивы и user-space в Linux-системах.
- Практический опыт администрирования Linux и отладки системных сервисов.
- Уверенное владение Bash и/или Python для написания аккуратных, поддерживаемых скриптов.
- Опыт работы с systemd, init-скриптами, конфигами сервисов и типовыми Linux-инструментами диагностики.
- Умение дебажить широкий круг системных проблем: в графике, видео, сетевом стеке, Linux-сервисах и других user-space/system-level компонентах либо быстро в этом разбираться.
- Навык системного поиска причин неисправностей: от симптома к локализации конкретного участка пайплайна или конфигурации.
- Понимание специфики embedded Linux устройств и умение работать в условиях неполной документации, нестабильных сборок и большого количества взаимосвязанных конфигов.
- Умение читать логи, воспроизводить баги, формулировать выводы и оформлять их в виде понятного отчёта для команды.
- Аккуратность в изменениях: важно не просто “чтобы заработало”, а чтобы решение было внятным, воспроизводимым и не отвратительным с точки зрения реализации.
- Уверенная работа с Git: умение оформлять чистую историю изменений, готовить понятные коммиты и pull request’ы.
- Готовность работать с open-source ecosystem: понимать, как подготовить изменения для upstream, как аргументировать решение, как общаться с maintainers и повышать шансы на принятие изменений.
Будет плюсом:
- Опыт работы с embedded Linux на реальных устройствах.
- Понимание загрузочного процесса Linux, boot menu, Device Tree и overlays.
- Базовое понимание kernel/bootloader-уровня, даже если основная работа будет сосредоточена в user-space.
- Опыт работы не только с графическим стеком, но и с другими подсистемами Linux, например видео, сетью, мультимедиа, системными сервисами и low-level user-space инфраструктурой.
- Опыт подготовки workaround’ов для продуктовых ограничений до появления полноценного upstream/fundamental fix.
- Умение быстро ориентироваться в чужих скриптах, конфигурациях и инженерных наработках.
- Хороший инженерный вкус: способность писать рабочие, простые и поддерживаемые решения без лишней магии.
- Опыт контрибьюта в open-source проекты: pull request’ы, patch review, взаимодействие с upstream-сообществами.
Что мы модем предложить
-
Полная удаленка из любой точки мира
-
Всю необходимую для комфортной работы технику
-
ДМС, спорт, иностранные языки на выбор и занятия с психологами
-
Пятидневку с гибким началом дня