Stworzenie aplikacji mobilnej, umożliwiającej otworzenie konta bankowego w wybranej lokalizacji

Stworzenie na urządzenia z systemem Android oraz iOS aplikacji mobilnej, dzięki której klient będzie mógł otworzyć konto bankowe w wybranej przez siebie lokalizacji zgodnie z lokalnym prawem oraz regulacjami.

iOS: Swift, SwiftUI, UIKit, MySQL, MongoDB, HTTPS, OAuth, OpenID Connect, XCTest, AWS, Appium, Browserstack, XCUITest, Github, Jenkins
Android: Kotlin, Java, HTTPS, MongoDB, MySQL, OAuth, OpenID Connect, Espresso, AWS, Appium, Browserstack, GitHub, Jenkins
Finanse i bankowość
12 miesięcy
Stworzenie aplikacji mobilnej, umożliwiającej otworzenie konta bankowego w wybranej lokalizacji blank

Projekt

Stworzenie aplikacji umożliwiającej otworzenie konta bankowego w wybranej przez użytkownika lokalizacji, zgodnie z obowiązującym tam prawem i regulacjami oraz w sposób łatwy, wygodny i zgodny z najnowszymi standardami. Celem oprogramowania jest:

  • Umożliwienie użytkownikowi dokonania rejestracji online bez konieczności fizycznego odwiedzania oddziału banku.
  • Wykorzystanie technologii biometrycznych, takich jak rozpoznawanie twarzy czy odcisków palców, w celu potwierdzenia tożsamości klienta.
  • Zautomatyzowanie procesów weryfikacyjnych i analizy dokumentów w celu przyspieszenia i ułatwienia otwarcia konta.
  • Możliwość elektronicznego podpisywania dokumentów i umów bez konieczności korzystania z papierowych formularzy.
  • Szybkość i natychmiastowe potwierdzenie otwarcia konta oraz dostępności środków w krótkim czasie.
  • Wprowadzenie funkcji umożliwiającej dostosowanie oferty bankowej do indywidualnych potrzeb klienta na podstawie zebranych danych i preferencji.
  • Integracja z funkcjami multimedialnymi, takimi jak wideoinstrukcje czy interaktywne przewodniki, w celu ułatwienia zrozumienia procesu otwierania konta.
  • Wdrożenie zaawansowanych środków bezpieczeństwa, takich jak szyfrowanie danych, a także zgodność z regulacjami dotyczącymi ochrony danych osobowych (GDPR) oraz standardami branżowymi.
  • Umożliwienie klientowi łatwej integracji otwartego konta z innymi produktami bankowymi, takimi jak karty płatnicze, kredyty czy usługi inwestycyjne.
  • Wykorzystanie narzędzi do analizy ryzyka i identyfikacji potencjalnych oszustw w czasie rzeczywistym.
  • Dostęp do funkcji wsparcia klienta online, takich jak czat w czasie rzeczywistym czy systemy pomocy.
  • Automatyczna ocena kredytowa klienta i analiza historii finansowej w celu przedstawienia odpowiednich ofert.

Aplikacja ma na celu nie tylko ułatwienie samego procesu otwierania konta, ale także dostarczenie klientom wyjątkowego i innowacyjnego doświadczenia, zgodnego z najnowszymi standardami w dziedzinie technologii i bankowości.

Zadanie

Aplikacja budowana jest równolegle na dwa systemy – iOS i Android. Po releasie będzie dostępna w App Store i sklepie Play. Pierwsze wersje są już dostępne na produkcji. Aplikacja tworzona jest w sposób natywny, tak aby zapewnić kluczowe funkcje dopasowane do urządzenia:

  • specyficzność dla platformy,
  • dostęp do funkcji urządzenia,
  • wydajność,
  • lepszą integrację z systemem operacyjnym,
  • dostęp do sklepów aplikacji,
  • optymalizacje wydajności,
  • łatwe aktualizacje.

Realizacja

Poszczególne zespoły scrumowe tworzą ze strony j‑labs:

  • 2x frontend developer,
  • 5x backend developer,
  • 4x QA Engineer (manualni i automatyzujący).

Dodatkowo w każdym zespole są:

  • 1x Product Owner,
  • 1x Scrum Master,
  • 1x Dev Tech Lead,
  • 1x QA Lead.

Osoby z j-labs tworzą dwa zespoły deweloperskie (w projekcie jest również trzeci zespół z Indii). Deweloperzy z j-labs zajmują się głównie backendem aplikacji, wszystkie trzy zespoły pracują także nad backendem i frontendem oraz jego integracją. QA Engineerzy z j-labs są odpowiedzialni za manualne i automatyczne testowanie nowych funkcjonalności, pisanie nowych scenariuszy testowych, tworzenie skryptów testowych, modyfikację istniejących scenariuszy testowych według potrzeb, zgłaszanie błędów, re-testowanie naprawionych błędów, przeprowadzanie regresji po każdej implementacji (w razie potrzeby), przeprowadzanie regresji przed wydaniem, budowanie środowisk, utrzymanie frameworka testowego, a także przeprowadzanie testów wydajnościowych wraz z analizą wyników. Odpowiadają również za tworzenie i ulepszanie podejścia testowego składającego się na cały proces testowy, tak aby był on zintegrowany z obecnymi marketami oraz mógł być łatwo dostosowywany dla kolejnych marketów. Osoby z j-labs zajmują się implementacją backendu i frontendu, testowaniem aplikacji (testy manualne aplikacji na urządzeniach mobilnych i na symulatorze – browserstack), tworzeniem i rozwijaniem frameworku testowego. Projekt podzielony jest na 2 repozytoria, oddzielnie dla iOS i Android. Framework testowy rozwijany jest przy pomocy Appium, XCUITest oraz Espresso.

Osoby z j-labs aktywnie uczestniczą we wszystkich fazach rozwoju oprogramowania:

  • PI Planning, trwający 3 dni, obejmujący szczegółowe omówienie zadań planowanych na okres około 3 miesięcy lub 6 sprintów.
  • Etap projektowy, podczas którego praca toczy się w dwutygodniowych sprintach.
  • Po zakończeniu etapu implementacji i uzyskaniu akceptacji podczas przeglądu kodu (Code Review) deweloperzy przekazują zrealizowane zadania do QA Engineerów.
  • Dla każdego zadania (chyba że ustalono inaczej podczas Sprint Planningu lub Refinementu) tworzone są dwa sub-taski – testy manualne i testy automatyczne, a także task dotyczący regresji. Każde zadanie musi być przetestowane na środowisku przedprodukcyjnym, nie tylko lokalnym.
  • Po przeprowadzeniu testów manualnych, uzyskane wyniki są dokładnie udokumentowane. Akceptowane bądź odrzucane są całe zadania lub poszczególne scenariusze. Wymagane jest pozytywne zakończenie testów każdego scenariusza, aby całe zadanie mogło zostać uznane za zakończone. W przypadku negatywnego wyniku zespół QA zwraca zadanie do developera w celu wprowadzenia niezbędnych poprawek.
  • Po zakończeniu testów manualnych każde zadanie jest poddawane testom automatycznym. Następnie przeprowadza się regresję całego repozytorium lub kilku repozytoriów, jeśli wprowadzona implementacja wpływa również na inne obszary. Po potwierdzeniu poprawności wyników dokonuje się scalenia kodu do gałęzi master i przekazuje go do przeglądu Product Ownerowi.
  • Co dwa tygodnie przygotowywana jest paczka releasowa, chyba że planowane jest jej wydanie po kolejnej iteracji. Dedykowany developer jest odpowiedzialny za skompletowanie paczki zawierającej zadania zaakceptowane przez Product Ownera.
  • Na zakończenie każdego sprintu przeprowadzana jest retrospekcja, podczas której analizowana jest praca zespołu, a także przedstawiane są ewentualne sugestie dotyczące usprawnień, które można wdrożyć w przyszłości.

Rzuć nam wyzwanie i opowiedz o projekcie, który chcesz rozwinąć

Napisz nam, czego potrzebujesz, a w ciągu 48 godzin wrócimy do Ciebie, aby
porozmawiać o współpracy. Wypełnij formularz lub wyślij wiadomość na j-labs@j-labs.pl.

Pracuj ze specjalistami, którzy dostarczą najlepszy możliwy produkt

Skontaktuj się z nami