W skrócie
- Zadania: Projektuj i rozwijaj skalowalne mikroserwisy płatnościowe z wykorzystaniem AI.
- Firma: Innowacyjna firma technologiczna w Gdyni i Warszawie z kulturą współpracy.
- Benefity: Atrakcyjne wynagrodzenie, elastyczne godziny pracy i możliwości rozwoju zawodowego.
- Pozostałe informacje: Dynamiczne środowisko z doskonałymi możliwościami rozwoju kariery.
- Dlaczego ta praca: Pracuj z najnowszymi technologiami i wpływaj na przyszłość płatności.
- Kwalifikacje: 10-letnie doświadczenie w programowaniu w Javie, w tym 5 lat w branży płatności.
Przewidywane wynagrodzenie mieści się w przedziale 121500 - 148500 zł za rok.
Opis roli: Senior Java Backend Developer - Payments AI Enabled Spec Driven Development
Detale roli:
- Lokalizacja: Gdynia i Warszawa, Polska - hybrydowe miejsce pracy
- Forma zatrudnienia: B2B/Subcon
- Doświadczenie: 10 lat w rozwoju backendu Java, w tym 5 lat w płatnościach lub bankowości
Podsumowanie roli:
Szukamy starszego programisty backendu Java z doświadczeniem w płatnościach, który zaprojektuje i zbuduje bezpieczne usługi płatnicze o wysokiej wydajności. Kandydat powinien być ekspertem w Core Java, Spring Boot, mikroserwisach i Kafka. Powinien również korzystać z inżynierii wspomaganej przez AI, szczególnie w zakresie rozwoju opartego na specyfikacjach, aby dostarczać oprogramowanie wysokiej jakości szybciej. Pracując bezpośrednio z interesariuszami klientów nordyckich, będzie odpowiedzialny za rozwiązania od specyfikacji po produkcję.
Kluczowe obowiązki:
- Projektowanie, rozwijanie i utrzymywanie skalowalnych mikroserwisów płatniczych dla inicjacji płatności, rozliczeń, uzgadniania i rekonsyliacji.
- Budowanie zdarzeniowych przepływów o wysokiej przepustowości przy użyciu Kafka z idempotencją, obsługą dokładnie raz i niezawodnym ponownym przetwarzaniem oraz obsługą błędów.
- Pisanie jasnych specyfikacji, wymagań, kryteriów akceptacji, kontraktów API, modeli danych i używanie ich jako jedynego źródła prawdy dla projektowania wspomaganego przez AI, generowania kodu i testowania.
- Krytyczna ocena wszystkich wyników generowanych przez AI pod kątem poprawności, bezpieczeństwa i zgodności.
- Projektowanie REST API w podejściu contract-first przy użyciu OpenAPI i synchronizacja specyfikacji oraz kodu.
- Zapewnienie, że rozwiązania spełniają standardy bankowe dotyczące bezpieczeństwa, odporności, audytu i ochrony danych.
- Współpraca z właścicielami produktów, architektami i testerami w zespołach Agile SAFe.
- Mentorowanie innych programistów w zakresie nowoczesnych praktyk inżynieryjnych Java i wspomaganych przez AI.
- Wsparcie produkcji i analiza incydentów dla systemów płatniczych krytycznych dla biznesu.
Wymagane umiejętności:
- Java i backend: Ekspert w Java 17, Java 21 (preferowane), Spring Boot 3, Spring Framework, Spring Data, Hibernate JPA.
- Spring Security z OAuth2/OIDC, JWT i mTLS.
- Wzorce mikroserwisów: brama API, wyłącznik obwodu, saga, outbox, CQRS i źródło zdarzeń.
- Producenci i konsumenci Kafka, partycjonowanie, rejestr schematów, Kafka Streams.
- Rozwój REST API w podejściu contract-first z OpenAPI/Swagger, wersjonowanie API i dokumentacja.
- Domena płatności: praktyczne doświadczenie z wiadomościami ISO 20022, pain, pacs, camt oraz migracją SWIFT MT/MX.
- Znajomość SEPA Credit Transfer, SEPA Instant SCT Inst, SEPA Direct Debit oraz schematów płatności w czasie rzeczywistym, takich jak TIPS, RT1.
- Zrozumienie cyklu życia płatności: inicjacja, walidacja, screening, routowanie, rozliczenie, uzgadnianie.
- Świadomość regulacji UE, w tym PSD2/Open Banking APIs, regulacji dotyczącej natychmiastowych płatności w UE, DORA, RODO oraz screening sankcji AML.
- AI i rozwój oparty na specyfikacjach: praktyczne doświadczenie w rozwoju opartym na specyfikacjach, pisanie strukturalnych, testowalnych specyfikacji, które napędzają projektowanie, kod i testy generowane przez AI.
- Umiejętne korzystanie z asystentów kodowania AI i agentów w codziennym rozwoju, inżynieria kontekstu i promptów, iterowanie nad wynikami, generowanie testów.
- Umiejętność walidacji kodu generowanego przez AI pod kątem jakości, bezpieczeństwa i wydajności oraz stosowanie zabezpieczeń, takich jak przegląd kodu, analiza statyczna i kontrole polityki.
- Zrozumienie odpowiedzialnego AI w regulowanych środowiskach, brak danych wrażliwych w promptach, śledzenie, nadzór ludzki.
- Dane i bazy danych: silne umiejętności w zakresie relacyjnych baz danych: Oracle, MS SQL, PostgreSQL; złożone zapytania, optymalizacja wydajności, transakcje i blokowanie.
- Narzędzia do migracji baz danych: Flyway, Liquibase.
- DevOps i jakość: Docker i Kubernetes, OpenShift (plus). CICD: Git, Maven, Bamboo, Jenkins, GitHub Actions, Ansible, repozytoria artefaktów Nexus, Artifactory.
- Testowanie: JUnit 5, Mockito, Testcontainers, testowanie kontraktów (Pact, Spring Cloud Contract), testowanie wydajności.
- Jakość kodu i bezpieczeństwo: SonarQube, skanowanie bezpieczeństwa statycznego i zależności, SAST, SCa, OWASP Top 10.
- Skrypty powłoki i narzędzia harmonogramujące: UC4, Automic, AutoSys, ControlM.
Sposób pracy: Doświadczenie w dostarczaniu w metodyce Agile i SAFe.
Preferowane: Platformy chmurowe: Azure, AWS, GCP. Obserwowalność: Grafana, Prometheus, OpenTelemetry, AppDynamics, ELK, Splunk. Doświadczenie z nordyckimi bankami lub dostawcami płatności. Starsze stosy do prac konserwacyjnych: WebLogic, Tomcat, JSP, JavaScript, Bootstrap. Certyfikaty: Oracle Java, Spring Professional, Kubernetes CKAD, certyfikaty chmurowe.
Senior Java Backend Developer in Gdynia – pracodawca: LTM
Jako Program Manager w Krakowie, będziesz częścią dynamicznego zespołu, który kładzie duży nacisk na innowacje i rozwój. Oferujemy elastyczny model pracy hybrydowej oraz możliwość pracy nad globalnymi projektami eCommerce, co sprzyja nie tylko rozwojowi zawodowemu, ale także osobistemu. Nasza kultura pracy opiera się na współpracy, ciągłym doskonaleniu oraz wsparciu dla pracowników w osiąganiu ich celów zawodowych.