Требования:
- Опыт коммерческой разработки Android-приложений от 2 лет.
- Знание ООП.
- Умение разбираться и работать с чужим кодом.
- Знание английского на уровне чтения документации.
- Технические навыки: Kotlin / Android: Знание AndroidSdk. Уверенное владение Kotlin. Знание Android Jetpack Compose. Навыки работы с Android NDK и взаимодействием с C++ через JNI.
- Умение работать с асинхронным кодом (Coroutines), c Hilt / Navigation Compose / DataStore Preferences C++ / JNI / Qt:
- Опыт разработки или интеграции нативного кода (C) в Android-приложения.
- Знание механизмов взаимодействия между Kotlin и C (JNI).
- Понимание структуры и сборки проектов с использованием CMake.
- Опыт работы с Qt в контексте Android будет большим плюсом.
- Опыт работы с Git, Gradle, Android Studio, ADB.
- Умение профилировать приложение и устранять утечки памяти / проблемы с производительностью.
- Опыт CI/CD (например, GitHub Actions, GitLab CI) — желательно.
Будет плюсом:
- Знание Clean Architecure, принципов SOLID, KMP.
- Опыт разработки на C++ с использованием Qt вне Android.
- Знание принципов кросс-платформенной разработки.
- Опыт работы с графикой, OpenGL/Qt Quick, кастомной отрисовкой.
- Опыт работы с unit-тестированием нативного и Android-кода.
Основные задачи на позиции:
- Поддержка и развитие гибридного Android-приложения (GUI на Kotlin, бизнес-логика на C++).
- Реализация пользовательского интерфейса на Kotlin в соответствии с макетами.
- Интеграция с существующим C-ядром через JNI.
- Участие в архитектурных решениях по улучшению взаимодействия между нативной и Android-частью.
- Оптимизация производительности и устранение ошибок.