Projektowanie, tworzenie i testowania oprogramowania w języku JAVA i/lub Kotlin.
Aktywny udział w projektowaniu struktur i baz danych niezbędnych do funkcjonowania oprogramowania,
Opracowywanie i utrzymywanie dokumentacji technicznej wytwarzanego oprogramowania,
Prowadzenie regularnych przeglądów kodu wytwarzanego oprogramowania, oraz pisanie testów jednostkowych.
Aktywna współpraca z innymi członkami Zespołu (Programiści, Projektanci UX/UI, Analitycy, Testerzy i Product Ownerzy projektu).
Poszukiwane kompetencje:
Doświadczenie w tworzeniu aplikacji natywnych od początku (nieprzerwane 3-5 lat, poparte portfolio aplikacji w Google Play).
Bardzo dobra znajomość środowiska platformy Android Studio, oraz cyklu życia aplikacji na tej platformie Android.
Bardzo dobra znajomość bibliotek Android (RxJava/RxKotlin, Android Architecture Components, Dagger 2, OkHTTP, Realm, FastAdapter).
Bardzo dobra znajomość narzędzia Gradle.
Doświadczenie w projektowaniu i implementacji aplikacji wykorzystujących relacyjne bazy danych
Bardzo dobra znajomość narzędzia Firebase, na poziomie konfiguracji i integracji z aplikacjami Android
Bardzo dobra znajomość platformy Google Cloud Platform services (pod kątem zastosowania różnego rodzaju dostępnych API).
Umiejętność pisania czystego, dobrze zaprojektowanego, wysokiej jakości kodu w zwinnym środowisku (TDD, wzorce projektowe).
Umiejętność pracy w zespole, oraz znajomość narzędzi wspierających pracę zespołową (systemy ciągłej integracji, systemy wersjonowania kodu, systemy zarządzania projektami - tzw. Issue trackery.
Przywiązanie do jakości wytwarzanych aplikacji i umiejętność pisania automatycznych testów jednostkowych i integracyjnych.
Praktyczna znajomość zwinnych metodyk rozwoju oprogramowania na poziomi.
Mile widziane:
Znajomość Google Photo API.
Znajomość Flutter (lub chęć do poznania tej technologii).
Znajomość ARCore (lub chęć poznania tego frameworku).