Требования:
Android Foundations
- Уверенное владение Kotlin и Java
- Опыт разработки интерфейсов с использованием XML layouts
- Уверенная работа с Android Studio и системой сборки Gradle
- Управление зависимостями и конфигурацией проекта через Gradle
UI и Interactivity
- Обработка пользовательских событий и жестов
- Управление изменениями конфигурации устройства(например, смена ориентации экрана)
- Реализация интерактивных элементов внутри Activities и Fragments
- Обеспечение корректной работы приложения на разных устройствах и разрешениях экранов
Navigation
- Использование Toolbar и Navigation Drawer для основной навигации
- Реализация таб-навигации с помощью BottomNavigationView
- Использование ViewPager / ViewPager2 для свайп-навигации
- Работа с Intents для переходов между экранами и передачи данных
Notifications
- Реализация push-уведомлений для повышения вовлеченности пользователей
- Кастомизация notification layouts
- Добавление действий (actions) внутри уведомлений
- Использование Notification Channels для управления уведомлениями
Архитектура и современные практики
- Опыт работы с MVVM архитектурой
- Использование Android Jetpack компонентов (ViewModel, LiveData / Flow, Navigation, Room и др.)
- Опыт внедрения Dependency Injection (например: Hilt / Dagger / Koin)
Firebase и аналитика
- Настройка и интеграция Firebase в Android-приложение
- Работа с Firebase Cloud Messaging (FCM) для push-уведомлений
- Настройка Firebase Analytics для отслеживания событий пользователей
- Обработка событий приложения и передача их в Firebase для аналитики
Миграция и развитие проекта
- Опыт миграции UI с XML на Jetpack Compose
- Поддержка и развитие существующего Android-приложения
- Рефакторинг и улучшение архитектуры приложения
- Оптимизация производительности и стабильности приложения
Будет плюсом
- Oпыт публикации приложений в Google Play
- Oпыт работы с REST API
- Знание Coroutines и Flow
- Опыт работы с Git