Summary
✨ AI‑Generated
A full stack development role within a small, highly experienced engineering team building a new event-driven microservices platform. You will develop backend services with Java and Spring Boot and frontend components with React and TypeScript, integrating through APIs, events, and a backend-for-frontend layer. The role emphasizes automated testing, maintainable code, architectural discipline, and thoughtful use of AI-assisted development tools.
Highlights
Work in a small, experienced engineering team on a new event-driven microservices platform, covering both backend and frontend development with strong architectural guidance, comprehensive testing, and responsible use of AI development tools.
Description
Budujemy nową platformę corową w architekturze mikroserwisowej, opartej na zdarzeniach.
Pracujesz w małym, mocnym zespole - obok dwóch doświadczonych architektów/seniorów, którzy wyznaczają architekturę i granice.
Twoją rolą jest dostarczać serwisy backendowe i komponenty frontendowe, które trzymają się przyjętych zasad, i rozumieć te zasady na tyle, by ich nie łamać.
Pracujesz z narzędziami AI jako przyspieszaczem - ale z własną, krytyczną oceną tego, co powstaje.
💼 Twój zakres obowiązków:
Budowa serwisów backendowych (Java / Spring Boot) w wyznaczonych granicach domenowych;Budowa komponentów frontendowych w React + TypeScript, osadzanych w jednym froncie-hoście i integrujących się z warstwą backendową przez BFF;Komunikacja między serwisami zgodnie z przyjętym modelem – przez API oraz zdarzenia (konsumpcja i publikacja);Pisanie testów (jednostkowych, integracyjnych, kontraktowych) i utrzymanie kodu w stanie gotowym do przejęcia;Praca z narzędziami AI do przyspieszenia – z krytyczną weryfikacją wyniku przed włączeniem go do kodu.
💡 Nasze wymagania:
Java i Spring Boot – komercyjne doświadczenie w budowie usług backendowych;Frontend: React + TypeScript – komercyjne doświadczenie (TypeScript jest wymogiem, nie czysty JS, bo komponenty mają typowany kontrakt z hostem);Front jako komponent, nie osobna apka – rozumienie różnicy między samodzielną aplikacją SPA a komponentem osadzanym w hoście (bez własnego routingu globalnego, bez własnego logowania, bez wołania backendów wprost – front rozmawia z jednym adresem, czyli BFF, a integracja z hostem idzie przez kontrakt obejmujący właściwości i zdarzenia);Doświadczenie w systemie mikroserwisowym – praca w architekturze mikroserwisowej i znajomość jej zasad (każdy serwis jest właścicielem swoich danych bez sięgania do cudzej bazy, komunikacja przez API i zdarzenia, idempotentni konsumenci oraz umiejętność wyjaśnienia celu istnienia tych zasad);Myślenie granicami – rozumienie, kiedy operacja powinna być synchroniczna, a kiedy zdarzeniem, oraz unikanie łączenia danych w poprzek serwisów;SQL i bazy relacyjne – swobodne projektowanie i praca ze schematem relacyjnym;Krytyczne używanie AI – korzystanie z narzędzi sztucznej inteligencji w celu przyspieszenia pracy przy jednoczesnej ocenie wyników, niewprowadzanie do kodu elementów niezrozumianych oraz wychwytywanie sytuacji, gdy wygenerowany kod łamie przyjęte zasady;Warsztat inżynierski – znajomość systemów Git, podstaw CI/CD oraz traktowanie pisania testów jako naturalnej części pracy;Współpraca – umiejętność pracy w granicach wyznaczonych przez seniorów oraz zadawania pytań w przypadku niejasności zamiast cichego omijania problemu.
⭐ Oferujemy:
Systemy zdarzeniowe i brokery komunikatów (np.
Kafka);Docker i Kubernetes – znajomość przynajmniej na poziomie użytkowym;Świadomość Domain-Driven Design oraz granic kontekstów (bounded contexts);Kontrakty API (OpenAPI) i schematy zdarzeń;Obserwowalność – metryki, logi oraz śledzenie (tracing);SSO, OAuth2 oraz OIDC (np.
integracja z Entra lub Azure AD).