Pracuj.pl Stacjonarnie Mid

Full Stack Developer (K/M)

Optima Logistics Group S.A.

⚲ Warszawa, Śródmieście

Do uzgodnienia

Wymagania

  • komercyjne doświadczenie w Java i Spring Boot (budowa usług backendowych)
  • komercyjne doświadczenie w React + TypeScript (TypeScript wymagany, nie czysty JS)
  • rozumienie różnicy między samodzielnym SPA a komponentem osadzanym w hoście (kontrakt: właściwości i zdarzenia, brak własnego routingu/logowania, komunikacja przez BFF)
  • doświadczenie w architekturze mikroserwisowej i zrozumienie jej zasad (własność danych, komunikacja przez API i zdarzenia, idempotentni konsumenci)
  • swobodne projektowanie i praca ze schematem relacyjnym (SQL)
  • krytyczne używanie narzędzi AI (ocena wyników, brak wdrażania niezrozumianego kodu)
  • znajomość Git, podstaw CI/CD, traktowanie testów jako naturalnej części pracy

Mile widziane

  • Kafka, Docker/Kubernetes, DDD, OpenAPI, obserwowalność, SSO/OAuth2/OIDC (Entra/Azure AD)

Opis stanowiska

Budowa nowej platformy corowej w architekturze mikroserwisowej opartej na zdarzeniach, w małym zespole obok dwóch doświadczonych architektów/seniorów, którzy wyznaczają granice domenowe. Twoja rola to dostarczanie serwisów backendowych (Java/Spring Boot) i komponentów frontendowych (React + TypeScript) osadzanych w jednym froncie-hoście przez BFF. Kluczowe jest zrozumienie zasad mikroserwisów (własność danych, idempotentni konsumenci, komunikacja przez API i zdarzenia) oraz krytyczne używanie AI. Oferta dla kogoś, kto lubi pracować w wyznaczonych granicach i rozumie architekturę, a nie tylko klepie kod.

🔍 Dekoder Ogłoszenia

🟡
Front jako komponent, nie osobna apka
Oczekuje się, że frontend będzie ściśle zintegrowany z istniejącą aplikacją hosta, a nie jako niezależny SPA.
🟡
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)
Frontend będzie miał ograniczone możliwości i będzie musiał działać w ramach zdefiniowanego interfejsu z aplikacją nadrzędną.
🟢
Myślenie granicami – rozumienie, kiedy operacja powinna być synchroniczna, a kiedy zdarzeniem, oraz unikanie łączenia danych w poprzek serwisów
Oczekuje się dojrzałego podejścia do architektury mikroserwisowej, z naciskiem na decoupling i unikanie anty-wzorców.
🟡
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
Chcą, abyś używał AI jako narzędzia, ale odpowiedzialność za jakość i bezpieczeństwo kodu nadal spoczywa na Tobie.
🟢
traktowanie pisania testów jako naturalnej części pracy
Oczekuje się, że pisanie testów jednostkowych i integracyjnych jest standardową praktyką, a nie dodatkowym zadaniem.