ITConnect Sp. z o.o.
Java Developer
Mid/Senior Java Backend Developer building and evolving REST APIs for a telecommunications product catalog, using Java 21+ and Spring Boot deployed on Kubernetes. Hybrid role in Warsaw (2 office days per week), covering API security, testing, and AI-assisted development tools.
- Compensation
- Not disclosed
- Location
- Warszawa, Poland
- Work setup
- Not specified
- Seniority
- Not specified
- Employment
- Not specified
- Experience
- Not specified
- Category
- Software engineering
- Posted
Skills
Must have
- Mid/Senior level Java Backend Developer
- Practical experience building backend applications in Java, including Java 21 or newer
- Very good knowledge of Spring Boot and Spring, including Spring Security
- Experience designing and implementing REST APIs with HTTP/HTTPS, JSON, data validation and error handling
- Knowledge of OpenAPI/Swagger and documenting API contracts
- Knowledge of SQL, relational databases, and data access from Java applications
- Knowledge of Git and Maven
- Practical knowledge of securing APIs with OAuth2/OIDC and JWT (authentication and authorization)
- Experience writing automated unit and integration tests using JUnit, Mockito or Testcontainers
- Knowledge of containerizing Java apps and deploying to Kubernetes (images, Deployment, Service, ConfigMap, Secret, readiness/liveness probes)
- Ability to verify deployments and do basic Kubernetes diagnostics (pod status, log analysis)
- Independence in development tasks and collaboration with analysts, architects and DevOps
- Ability to use AI tools for solution design, coding and testing
Nice to have
- Experience with product catalogs or telecom-industry systems
- Knowledge of asynchronous communication and message brokers such as Kafka or RabbitMQ
- Experience with PostgreSQL and JPA/Hibernate
- Experience with CI/CD pipelines (e.g. GitHub Actions, GitLab CI) and artifact repositories (Nexus, Artifactory)
- Knowledge of monitoring/observability tools such as Prometheus, Grafana, ELK, OpenSearch or OpenTelemetry
- Experience practically deploying and maintaining applications on Kubernetes
Full description
narzędzia AI wspierające programowanie i testowanie.
Forma zatrudnienia:
Szukamy Java Backend Developera na poziomie Mid/Senior do projektu obejmującego tworzenie i rozwój aplikacji udostępniających API katalogu produktów telekomunikacyjnych. Rozwiązania będą rozwijane w oparciu o Java 21+ oraz Spring Boot i wdrażane w środowisku Kubernetes.
Twój zakres obowiązków:
- Projektowanie, implementacja i rozwój REST API oraz logiki biznesowej aplikacji backendowych.
- Tworzenie i rozwijanie aplikacji w Java 21+ z wykorzystaniem Spring Boot i Spring.
- Projektowanie kontraktów API oraz dokumentowanie ich z wykorzystaniem OpenAPI/Swagger.
- Integracja aplikacji z bazami danych i systemami zewnętrznymi, w tym mapowanie i transformacja danych.
- Implementacja walidacji danych, obsługi błędów oraz mechanizmów uwierzytelniania i autoryzacji.
- Tworzenie i utrzymywanie testów jednostkowych i integracyjnych.
- Dbanie o jakość kodu, udział w code review, diagnozowanie problemów i optymalizacja wydajności aplikacji.
- Współpraca z analitykami i architektami przy analizie wymagań oraz projektowaniu rozwiązań.
- Współpraca z zespołem DevOps przy wdrażaniu aplikacji na Kubernetes i diagnozowaniu problemów po wdrożeniu.
- Wykorzystywanie narzędzi AI wspierających projektowanie rozwiązań, implementację oraz testowanie kodu.
Nasze wymagania:
- Praktyczne doświadczenie w tworzeniu aplikacji backendowych w Java oraz znajomość Java 21 lub nowszej.
- Bardzo dobra znajomość Spring Boot i Spring, w tym Spring Security.
- Doświadczenie w projektowaniu i implementacji REST API z wykorzystaniem HTTP/HTTPS, JSON, walidacji danych i obsługi błędów.
- Znajomość OpenAPI/Swagger i dokumentowania kontraktów API.
- Znajomość SQL, relacyjnych baz danych oraz sposobów dostępu do danych z aplikacji Java.
- Znajomość Git i Maven.
- Praktyczna znajomość zabezpieczania API, w tym uwierzytelniania i autoryzacji z wykorzystaniem OAuth2/OIDC oraz JWT.
- Doświadczenie w tworzeniu testów automatycznych, w tym jednostkowych i integracyjnych, z wykorzystaniem JUnit, Mockito lub Testcontainers.
- Znajomość konteneryzacji aplikacji Java i wdrażania ich w środowisku Kubernetes, w tym obrazów kontenerowych, Deployment, Service, ConfigMap, Secret oraz sond gotowości i dostępności.
- Umiejętność weryfikacji wdrożeń i podstawowej diagnostyki aplikacji na Kubernetes, w tym sprawdzania statusu podów i analizy logów.
- Samodzielność w realizacji zadań developerskich oraz umiejętność współpracy z analitykami, architektami i zespołem DevOps.
- Umiejętność wykorzystywania narzędzi AI w pracy nad kodem i testami.