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.
Zakres obowiązków
- 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.
Wymagania
- 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.