Java Developer
Summary
Java developer at AUTENTI, a Polish e-signature and digital-document platform, owns the full app lifecycle — design, coding, testing, deployment, production monitoring — across ~70 Java 21/Spring Boot 3 microservices on Azure Kubernetes, building integration APIs for e-signature, e-ID and e-delivery services. Remote B2B with occasional on-site meetings.
Technologie:
- Pracujemy w architekturze mikroserwisowej z wykorzystaniem komunikacji synchronicznej REST oraz asynchronicznej
- Nasze serwisy pracują na Java, większość w wersji 21 oraz używamy Spring Boot 3
- Nasze projekty budujemy w oparciu o gradle
- Używamy baz SQL (PostgreSQL) oraz NoSQL (MongoDB) - baza dobrana w zależności od potrzeb
- Stosujemy architekturę heksagonalną, DDD oraz CQRS
- Testujemy - programiści piszą testy swoich aplikacji/komponentów
- Budujemy monitoring aplikacji z wykorzystaniem Grafana + Prometheus + Kibana
- Całość uruchomiona w klastrze Kubernetes od Azure czyli AKS.
- Uczestniczenie w całym cyklu życia aplikacji - od planowania przez implementację, dokumentację, testowanie i wdrażanie, aż do monitorowania na produkcji
- Pisanie wysokiej jakości kodu pokrytego kilkoma rodzajami testów w architekturze mikroserwisowej (całościowo w firmie mamy około 70 mikroserwisów)
- Udział w tworzeniu interfejsów integracyjnych, zarówno tych dostępnych publicznie, jak i dla naszych aplikacji
- Rozwój istniejących usług Autenti
- Ma dobrą znajomość zagadnienia architektury mikroserwisowej
- Ma doświadczenie w projektowaniu aplikacji w języku Java
- Wykazuje się dobrą znajomością wzorców projektowych
- Zna język angielski na poziomie komunikatywnym
- Myśli krytycznie, sprawnie komunikuje się ze współpracownikami
- Gra zespołowo - jest chętna do dzielenia się wiedzą i pomysłami z innymi ale również otwarta na inne punkty widzenia
- Współpracę w modelu B2B w oparciu na jasno określone cele i rezultaty.
- Wysoki poziom autonomii w sposobie realizacji usług.
- Możliwość świadczenia usług zdalnie oraz udziału w okazjonalnych spotkaniach roboczych on-site.
- Udział w projektach o dużej skali i złożoności biznesowej, we współpracy z doświadczonymi zespołami produktowymi, technologicznymi i biznesowymi.
- Dostęp do narzędzi i systemów niezbędnych do realizacji usług.