Flutter (Android/iOS) Developer
Summary
Develop and maintain Flutter-based mobile apps for EV charging stations and driver services, integrating payment systems, OCPP, and hardware protocols like Modbus RTU.
У зв'язку з розширенням діяльності запрошуємо до команди Flutter / Android розробника.
Мета ролі
Підтримка та розвиток двох продуктів компанії:
Android-застосунок зарядної станції — вбудований у станцію планшет, що замінює окремий модем та виконує роль UI, платіжного терміналу й діагностичного інструменту.
Мобільний застосунок для водіїв електромобілів (Android + iOS) — пошук станцій, запуск сесій, оплата, історія зарядок.
Обов'язки
Розробка та підтримка Flutter-застосунку зарядної станції;
Розробка та підтримка мобільного застосунку для водіїв під Android та iOS;
Робота з RS-485 / Modbus RTU через Android USB Host API;
Реалізація та підтримка OCPP-клієнта (WebSocket/WSS);
Фонові процеси, Kiosk Mode, автозапуск, віддалене оновлення APK;
Інтеграція з платіжними сервісами;
Публікація та підтримка релізів у Google Play та App Store;
Участь у код-рев'ю, дотримання внутрішніх процесів розробки;
Ведення технічної документації.
Вимоги
Обов'язково:
3+ роки комерційного досвіду з Flutter;
Досвід розробки під обидві платформи — Android та iOS;
Впевнений Kotlin / Android SDK;
Досвід роботи з Platform Channels (MethodChannel, EventChannel), написання нативних плагінів;
Foreground Service, WorkManager, BroadcastReceiver;
Android USB Host API, робота з послідовними інтерфейсами;
Modbus RTU (або готовність швидко освоїти);
WebSocket, REST, JSON, HTTPS;
Досвід публікації застосунків у Google Play та App Store;
Досвід роботи з BLoC;
Забезпечення належного покриття критичних сценаріїв;
Участь у формуванні стандартів якості коду та тестування в команді;
Підтримка та розширення набору автотестів;;
Впровадження автотестів для сталого функціоналу як обов'язкової частини поставки;
Буде великим плюсом:
Досвід роботи з мапами (Google Maps / Mapbox / інші) — кластеризація, кастомні маркери, оптимізація продуктивності;
OCPP 1.6 / 2.0.1;
Kiosk / Lock Task Mode, Device Owner, MDM;
Embedded (STM32) або досвід з low-level протоколами;
Досвід у EV-домені.
Очікування
Робота згідно внутрішніх процесів та стандартів команди;
Здатність швидко влитися в команду зі сталими процесами та чіткими зонами відповідальності;
Якісний код, дотримання архітектурних рішень проєкту;
Проактивність, самостійність у прийнятті технічних рішень у межах своєї зони відповідальності.