Описание проекта:
Проект достаточно большой, включает множество модулей и функциональностей. Работа ведется как с Java, так и с Kotlin, при этом цель — в перспективе мигрировать все компоненты на Kotlin. Аналогично и в архитектурном плане: есть компоненты на MVC, MVP и компоненты, мигрированные на MVVM, с той же целью — перевести все на MVVM (Model-View-ViewModel). Функциональность разнообразная: от получения и отправки данных из внешнего API до интеграций с Bluetooth-устройствами — включая API для Bluetooth, API для Bluetooth Low Energy, интеграции с Firebase, различными third-party приложениями, банковскими приложениями и т.д.
Будет работа как с SQLite, так и с Realm и Room (в проектах SFA, Logistic, WMS). Также стоит отметить, что следующий этап — замена текущего API и использование нового API, а также рефакторинг всего модуля с переходом на Room и на чистую архитектуру, основанную на MVVM.
Требования:
- Минимум 3–5 лет предыдущего опыта в разработке ПО;
- Уверенные знания Kotlin и Java
- Опыт работы с RESTful APIs и использования Retrofit, OkHttp, Protobuff, JSON, XML
- Опыт внедрения современных архитектур: MVVM, MVP или Clean Architecture.
- Опыт работы с Android SDK (Coroutines, ViewModel, LiveData, StateFlow, Navigation Component, Room, Realm)
- Опыт работы с Git и управления исходным кодом (GitHub, Bitbucket)
- Управление зависимостями (Gradle)
- Знания Android Profiler, Logcat и debugging tools для выявления и устранения ошибок производительности или функциональных ошибок
- Базовые знания UI/UX design и Material Design
- Опыт работы с Firebase Crashlytics, Google Maps API, Glide, Bluetooth SDK
- Знания в части интеграции third-party SDK библиотек
- Знания процесса разработки Agile, участие в sprint meetings и управление задачами в инструменте типа Jira
Обязанности:
- Разработка и интеграция новой функциональности приложений на основе технических требований и требований продуктовой команды.
- Мониторинг и устранение проблем производительности или функциональности, выявленных на этапе разработки или по отзывам пользователей.
- Постоянное улучшение существующего кода, обеспечивая его хорошую структуру и простоту сопровождения
- Мониторинг показателей приложения в Firebase Analytics, Crashlytics для выявления ошибок.
- Подготовка приложения к публикации для клиента
- Умение вести несколько задач одновременно и соблюдать дедлайны.
- Навыки четкой коммуникации для эффективного взаимодействия с командами QA, Support, Product и backend.
- Способность быстро осваивать новые технологии и адаптироваться к изменениям требований проекта.
Технологии
- Kotlin, Clean Architecture
- MVVM, MVP design pattern
- Jetpack Libraries
- Android SDK
- Retofit, Coroutine
- JSON, XML, OkHttp, and Restful APIs
- Navigation components and lifecycle-aware
- Обязательное знание румынского языка.