Android разработчик (Senior, MDM)
Описание
Компании ООО "Передовые Технологии" - разработчику отечественного программного обеспечения RuDesktop в сфере удаленного доступа и управления, администрирования пользовательскими устройствами на наиболее популярных ОС - требуется разработчик. Клиентами компании являются как частные лица, так и корпоративные с парком в десятки тысяч устройств с различной архитектурой и работающих под управлением различных операционных систем. Rudesktop решает рутинные задачи системного администрирования: Удалённый доступ к ПК пользователя, Установка\Удаление программ, Настройка операционных систем, Исполнение скриптов и политик, Инвентаризация ПО и оборудования и выполняет множество другой работы, которую обычно выполняют решения класса UEM. Наше программное обеспечение предоставляет как облачное решение в виде сервера, так и возможность развернуть локальный сервер, чтобы клиенты могли установить его на своем парке оборудования. Чем предстоит заниматься: — Разработка компонентов MDM-решения под Android в связке с сервером управления. — Реализация политик управления: ограничения приложений, блокировка устройства, режим киоска. — Реализация функций удалённого управления: блокировка, сброс данных (wipe), тихая установка приложений, отчёты о соответствии политикам безопасности. — Поддержка способов первоначальной установки и провижининга устройств (QR-код, zero-touch enrollment и др.). — Работа с Foreground Services, WorkManager и BroadcastReceiver для надёжного выполнения фоновых задач. — Проектирование архитектуры мобильных модулей и рефакторинг legacy-кода. — Декомпозиция и оценка задач, выбор подхода до начала реализации. — Покрытие кода тестами и поддержание стабильности CI. — Взаимодействие с командами серверной части (Python), кроссплатформенного ядра (Rust), тестировщиками и DevOps; участие в еженедельных созвонах Наш стэк: Kotlin, Flutter/Dart (UI в основном на нём), Android SDK, DevicePolicyManager и Android Enterprise (Device Owner / Profile Owner), Foreground Services, WorkManager, BroadcastReceiver. Нативный код через JNI (C/Rust), flutter_rust_bridge, Gradle. Смежно в продукте — Rust в кроссплатформенном ядре и Python (Django) на серверной стороне.Для нас важно: — Промышленная разработка под Android на Kotlin от 5 лет. — Коммерческая разработка на Flutter от 3 лет. — Знание API DevicePolicyManager и концепций Android Enterprise (Device Owner / Profile Owner, provisioning). — Понимание жизненного цикла приложения и компонентов Android, механизмов фоновой работы (Foreground Services, WorkManager, BroadcastReceiver) и ограничений по батарее/Doze. — Уверенная работа с AI-инструментами: LLM-ассистенты для написания и рефакторинга кода, понимание их ограничений и обязательная проверка результата. — Уверенная работа с Git (ветки, merge requests, разрешение конфликтов), опыт написания и поддержки тестов. — Умение разбираться в большой чужой кодовой базе; аккуратность в коде: осознанная работа с зависимостями, понимание влияния изменений на сборку. — Самостоятельность: способность довести задачу от неполного ТЗ до результата, задавая правильные вопросы. Будет плюсом: — Опыт работы с нативным кодом (C, в идеале Rust) через JNI/FFI: ручные extern "C", C ABI, bindgen, интеграция Rust с Flutter (flutter_rust_bridge). — Опыт с vendor-специфичными MDM API (Samsung Knox, Zebra, Honeywell и др.), Android Management API / EMM, zero-touch enrollment, режим киоска (Lock Task Mode). — Сборка под кастомные прошивки / AOSP, работа с системными привилегиями и подписанными системными приложениями. — Опыт с системами удалённого доступа, MDM/UEM, on-premise продуктами, поставляемыми заказчикам. — Опыт с протоколами видео/аудио, кодеками, захватом экрана (remote control). — Знание Rust и Python на уровне «прочитать и поправить» (кроссплатформенное ядро и серверная часть). Условия работы:У нас возможет любой формат работы: полная занятость, удаленная работа, гибридный график; Аккредитованная IT-компания; У нас нет бюрократии и тайм-трекеров, работаем в комфортном режиме; Оклад по результатам собеседования (ограничен только опытом и знаниями).