Flutter Developer
Коротко
Designs and develops an offline-first mobile platform for servicing IoT devices in Flutter for Android and iOS; integrates REST APIs, OAuth2/JWT, and native · Needs: 5+ years in mobile development, 3+ years commercial Flutter and Dart; hybrid work in Wrocław; B2B contract.
Описание от работодателя
Senior Flutter Developer
Lokalizacja: Wrocław
Tryb pracy: hybryda
Forma współpracy: B2B (contracting)
Stawka: 120–145 PLN/h netto + VAT
O projekcie
Dołącz do zespołu R&D rozwijającego nowoczesną platformę mobilną wspierającą serwisowanie inteligentnych urządzeń IoT. Celem projektu jest zastąpienie wielu rozproszonych aplikacji jednym, wydajnym rozwiązaniem mobilnym, które obsłuży cały cykl pracy serwisanta – od diagnostyki po konfigurację urządzeń.
Poszukujemy doświadczonego Senior Flutter Developera , który będzie odpowiedzialny za projektowanie architektury oraz rozwój aplikacji mobilnej działającej w modelu offline-first , komunikującej się bezpośrednio z urządzeniami poprzez dedykowane protokoły.
Daily tasks:
- Projektowanie i rozwój aplikacji mobilnej w Flutterze dla systemów Android i iOS.
- Tworzenie skalowalnej architektury aplikacji oraz dbanie o wysoką jakość kodu.
- Integracja z REST API oraz implementacja mechanizmów uwierzytelniania (OAuth2, JWT).
- Implementacja komunikacji z urządzeniami IoT oraz obsługa synchronizacji danych.
- Optymalizacja wydajności aplikacji, czasu uruchamiania oraz wykorzystania pamięci.
- Tworzenie i utrzymywanie testów jednostkowych, widgetowych oraz integracyjnych.
- Implementacja natywnych funkcjonalności z wykorzystaniem Platform Channels.
- Współpraca z zespołami Backend, UX/UI oraz Product Ownerami.
- Udział w code review, definiowaniu standardów programistycznych oraz mentoringu mniej doświadczonych programistów.
- Odpowiedzialność za dostarczanie funkcjonalności od etapu projektowania do wdrożenia.
Minimum 5 lat doświadczenia w tworzeniu aplikacji mobilnych, w tym co najmniej 3 lata komercyjnej pracy z Flutterem i Dartem.
Bardzo dobra znajomość Flutter Framework oraz języka Dart.
Znajomość cyklu życia widgetów oraz mechanizmów renderowania Fluttera.
Doświadczenie w tworzeniu aplikacji na Android i iOS z jednej bazy kodu.
Bardzo dobra znajomość programowania asynchronicznego (async/await, Streams, Isolates).
Doświadczenie z architekturami Clean Architecture, MVVM, BLoC, Cubit lub Provider.
Umiejętność projektowania modularnych i skalowalnych aplikacji.
Doświadczenie z Dependency Injection.
Praktyczna znajomość integracji REST API.
Znajomość OAuth2, JWT oraz mechanizmów cache, retry i obsługi błędów.
Doświadczenie z JSON serialization.
Umiejętność optymalizacji wydajności aplikacji.
Doświadczenie z Flutter DevTools oraz narzędziami do monitorowania błędów.
Praktyczne doświadczenie w testowaniu aplikacji (Unit, Widget, Integration Tests).
Znajomość CI/CD oraz narzędzi takich jak GitHub Actions, GitLab CI, Bitrise lub Jenkins.
Doświadczenie z Platform Channels, Secure Storage, Deep Linking, Push Notifications oraz Background Tasks.
Dobra znajomość zasad bezpieczeństwa aplikacji mobilnych.
Umiejętność pracy w środowisku Agile oraz współpracy z zespołami produktowymi i UX.
Mile widziane Doświadczenie w projektach IoT lub Smart Home.
Znajomość komunikacji Bluetooth.
Doświadczenie z Feature Flags lub Remote Config.
Znajomość Firebase Crashlytics oraz Azure DevOps.
Must have: Flutter, Dart, Android, iOS, Clean Architecture, MVVM, BLoC, Cubit, Provider, Dependency injection, REST API, OAuth2, JWT, JSON, Flutter DevTools, Unit, Widget, Integration test, CI/CD, GitHub Actions, GitLab CI, Bitrise, Jenkins, Platform channels, Secure Storage, Deep Linking
Nice to have: IoT, Smart Home, Bluetooth, Feature Flags, Remote Config, Firebase Crashlytics, Azure DevOps