Обязанности:
- Проектировать, разрабатывать и поддерживать мобильные приложения на Flutter для iOS и Android.
- Рефакторить и перестраивать существующий код в соответствии с принципами чистой архитектуры.
- Плотно взаимодействовать с UI/UX-дизайнерами для создания адаптивных, пиксель-перфект интерфейсов по макетам Figma.
- Сотрудничать с backend-разработчиками для интеграции RESTful API, WebSockets и других сервисов.
- Реализовывать решения для управления состоянием с предсказуемым и поддерживаемым кодом.
- Проектировать и управлять навигационными потоками для корректной маршрутизации.
- Реализовывать deep linking и сохранять состояние навигации между перезапусками приложения.
- Интегрировать аналитические платформы для отслеживания событий, воронок и вовлеченности пользователей.
- Оптимизировать производительность приложения, снижать использование памяти, обеспечивать плавную анимацию.
- Гарантировать кроссплатформенную совместимость, доступность и единый пользовательский опыт.
- Писать модульные, виджет-тесты и интеграционные тесты для поддержания высокого качества кода.
- Быть в курсе тенденций в экосистеме Flutter/Dart и предлагать улучшения.
- Документировать архитектурные решения, рабочие процессы и стандарты кодирования.
Требования:
- 3+ лет профессионального опыта разработки на Flutter.
- Отличное знание Dart, Flutter SDK и принципов чистой архитектуры.
- Опыт работы с управлением состоянием (одно из: Bloc/Cubit, Riverpod, Provider, GetX, MobX).
- Глубокое понимание навигации в Flutter и вложенных маршрутов.
- Опыт интеграции с REST API, websocket.
- Опыт работы с GIS и геосервисами
- Опыт работы с аналитическими инструментами (Amplitude, Firebase Analytics, Mixpanel или аналогами).
- Уверенное владение системами контроля версий.
- Отличное знание адаптивного UI, анимаций и разработки кастомных виджетов.
- Глубокое понимание принципов SOLID, DRY и разработки через тестирование (TDD).
- Знание локальных хранилищ данных (SQLite, Hive, ObjectBox, SharedPreferences).
- Понимание лучших практик безопасности мобильных приложений (защищенное хранилище, ключи API, шифрование данных).
- Опыт работы с push-уведомлениями, deep linking и фоновыми сервисами.
- Умение работать в среде Agile/Scrum.
- Отличные коммуникативные навыки для кросс-функционального взаимодействия.
- Опыт публикации приложений в Google Play и App Store.
- 5-дневная рабочая неделя с 9.00 до 18.00.
- Повышение квалификации, сертификация.
- Заработная плата: по результатам собеседования.
- Тимбилдинги и совместные спортивные игры.