STANOWISKO
SOFTWARE DEVELOPMENT & ARCHITECTURE
Senior Software Engineer – with FinTech / SWIFT experience
ŁÓDŹ
WARSZAWA
BYDGOSZCZ
W Knowit łączymy pasję do technologii z wpływem na przyszłość. Jako część naszego zespołu, będziesz tworzyć innowacyjne projekty, które nie tylko definiują technologiczną przyszłość, ale również przyczyniają się do zrównoważonego wzrostu. Priorytetem jest dla nas Twój postęp zawodowy i osobisty, dlatego oferujemy bogaty zakres możliwości doskonalenia zawodowego i międzynarodową wymianę wiedzy. Nasze środowisko pracy wyróżnia się elastycznością i troską o równowagę między życiem zawodowym a prywatnym.
Szukamy kandydatów mieszkających w Polsce/EU.
Poszukujemy pełnego pasji Senior Software Engineera, który dołączy do naszego zespołu Connectivity Platform. Osoba na tym stanowisku będzie odpowiedzialna za projektowanie i wdrażanie kluczowych rozwiązań komunikacyjnych i transferów danych finansowych między bankami, klientami i systemami wewnętrznymi. Rola ta wymaga dogłębnej wiedzy na temat protokołów bankowych, systemów rozproszonych oraz wzorców integracji na poziomie korporacyjnym. W związku z modernizacją, modularyzacją i rozbudową naszego systemu rozproszonego, poszukujemy eksperta w zakresie architektury opartej na zdarzeniach (Event-Driven Architecture) oraz projektowania opartego na domenie (Domain-Driven Design). Idealny kandydat będzie sprawnie poruszał się w złożonym środowisku domenowym, zachowując przy tym świadomość ograniczeń wynikających z technologii dziedziczonych (legacy), podejmując te wyzwania z entuzjazmem i zaangażowaniem wprowadzania transformacyjnych zmian.
Zadania w projekcie:
Definiowanie i realizacja wizji technicznej dla komponentów platformy connectivity.
Prowadzenie decyzji architektonicznych w zakresie integracji z systemami bankowymi
Projektowanie rozwiązań klasy korporacyjnej dla systemów finansowych o wysokiej dostępności
Ustanawianie standardów technicznych i dobrych praktyk w zakresie niezawodności i wydajności systemu
Inicjowanie i prowadzenie innowacji technicznych oraz działań modernizacyjnych
Tworzenie i utrzymywanie integracji z protokołami bankowymi (SWIFT, Bank API, EBICS, SFTP, FTP)
Implementacja niezawodnych rozwiązań do obsługi systemów i protokołów wiadomości finansowych
Projektowanie i rozwijanie skalowalnych systemów rozproszonych z uwzględnieniem ewolucji monolitu oraz mikroserwisów
Zapewnienie wysokiej jakości kodu dzięki nowoczesnej, modułowej architekturze i podejściu test-driven development
dbanie o niezawodność systemu
Wymagania:
Minimum 8 lat doświadczenia w programowaniu w Javie (Spring) oraz pracy z systemami rozproszonymi
Praktyczna znajomość dobrych praktyk developerskich: TDD/BDD, DDD, OOP, FP, Architektura Heksagonalna, Architektura oparta na zdarzeniach, Clean Code, projektowanie API, CI/CD
Umiejętność poprawy i refaktoryzacji istniejącego kodu
Udokumentowane doświadczenie w tworzeniu systemów o kluczowym znaczeniu i wysokiej dostępności
Znajomość wdrożeń i monitorowania (alerty, metryki)
Doświadczenie w projektowaniu baz danych i dobra znajomość SQL
Silne podstawy w zakresie optymalizacji wydajności i skalowalności systemów
Doświadczenie z Kubernetes i architekturami cloud-native (preferowane AWS)
Wiedza z zakresu mikroserwisów i wzorców integracji korporacyjnych
Zrozumienie architektury bezpieczeństwa w systemach finansowych
Skuteczna codzienna komunikacja w języku angielskim – w mowie i piśmie (min. b2)
Znajomość protokołów łączności płatniczej, w tym sieci SWIFT i bankowych interfejsów płatniczych
Preferowane kwalifikacje:
Doświadczenie z systemami kolejkowania wiadomości (RabbitMQ, Kafka)
Znajomość standardów branży finansowej (SWIFT, API fintech, ISO 20022)
Doświadczenie z platformami SaaS obsługującymi wielu klientów (multi-tenant)
Doświadczenie w branży fintech lub technologii bankowej
Mile widziana znajomość Kubernetes
Oferujemy:
- Kontrakt biznesowy B2B (jeśli jesteś zainteresowany inną formą zatrudnienia - zapoznaj się z naszymi innymi ogłoszeniami)
- Nowoczesne biuro, wyposażone w stół do ping ponga oraz urządzenia do ćwiczeń.
- Możliwości rozwojowe w pionie i poziomie.
- Możliwość decydowania, na co wydany zostanie Twój budżet na rozwój (szkolenia techniczne, językowe, kompetencje miękkie, dofinansowanie certyfikatów, konferencje).
- Kulturę organizacyjną opartą na dzieleniu się wiedzą.
- Szereg inicjatyw, odciągających od codziennej pracy :)