Senior Kotlin Multiplatform Developer (bankowość)
Lokalizacja: Hybryda - 4 dni w miesiącu z biura w Warszawie, reszta zdalnie
Stawka: do 160 zł/h na b2b
Wprowadzenie i PodsumowaniePoszukiwany Senior Kotlin Multiplatform Developer z zaawansowanym doświadczeniem w Kotlinie i Kotlin Multiplatform (KMP). Idealny kandydat wykazuje silne umiejętności w projektowaniu oraz architekturze aplikacji, a także w programowaniu asynchronicznym. Oferta skierowana do profesjonalistów z minimum 5-letnim doświadczeniem w rozwoju oprogramowania.
Główne obowiązki
- Projektowanie i rozwój aplikacji z wykorzystaniem Kotlin Multiplatform (KMP).
- Tworzenie i utrzymywanie współdzielonych modułów biznesowych oraz warstwy danych.
- Integracja modułów KMP z aplikacjami Android i iOS.
- Projektowanie architektury aplikacji zgodnie z zasadami Clean Architecture i modularizacji.
- Implementacja komunikacji z API (REST, GraphQL) oraz zarządzanie lokalnym cache i synchronizacją danych.
- Tworzenie testów jednostkowych i integracyjnych dla modułów współdzielonych oraz platformowych.
- Współpraca z zespołami Android, iOS oraz Backend.
- Udział w code review, refaktoryzacji oraz utrzymaniu wysokiej jakości kodu.
- Analiza wydajności aplikacji, debugowanie oraz optymalizacja rozwiązań.
- Współtworzenie standardów technicznych i wsparcie mniej doświadczonych programistów.
Wymagania kluczowe
- Minimum 5 lat doświadczenia w tworzeniu oprogramowania (Mobile lub Backend).
- Minimum 2 lata doświadczenia z Kotlin oraz minimum rok komercyjnego doświadczenia z Kotlin Multiplatform (KMP).
- Udział w co najmniej jednym produkcyjnym projekcie opartym o Kotlin Multiplatform.
- Bardzo dobra znajomość Kotlin (Coroutines, Flow, Extension Functions) oraz Kotlin Multiplatform (Shared Modules, expect/actual, commonMain).
- Doświadczenie z Jetpack Compose oraz architekturą Android (ViewModel, Lifecycle, Hilt/Koin).
- Znajomość integracji KMP z iOS oraz podstaw Swift/SwiftUI lub UIKit.
- Praktyczna znajomość Clean Architecture, MVVM/MVI oraz modularizacji aplikacji.
- Doświadczenie z REST API, GraphQL, Kotlinx Serialization oraz zarządzaniem danymi (cache, offline-first).
- Umiejętność pisania testów jednostkowych i integracyjnych (MockK lub podobne narzędzia).
- Znajomość Gradle (KTS), Git oraz narzędzi CI/CD (GitLab CI lub GitHub Actions).
- Umiejętność projektowania rozwiązań, dbania o jakość kodu, przeprowadzania code review oraz rozwiązywania problemów wydajnościowych.
Nice to Have
- Compose Multiplatform.
- Ktor.
- Kotlin/JS lub WebAssembly (Wasm).
- Domain-Driven Design (DDD).
- Doświadczenie w roli Tech Leada, mentoringu lub definiowaniu standardów technicznych.