Senior Backend Engineer | Java
Summary
A senior Java backend engineer designs and maintains versioned APIs and backend services for defence software deployed in offline, air-gapped NATO environments, and sets coding standards and mentors engineers across the backend chapter. Core stack: Java 17+, Spring Boot/Quarkus, Kafka, PostgreSQL, Docker/Kubernetes/Helm.
- Design and maintain Java backend services and APIs so they remain stable and versioned across releases, allowing customers in offline environments to upgrade on their own schedule.
- Build and own complex business logic and integration layers connecting to legacy and customer systems, working across REST, SOAP, batch file exchange and event-driven patterns with Kafka.
- Package and deliver services for Kubernetes deployments including offline customer installations, applying reproducible build, image signing and SBOM practices throughout.
- Define and embed Java coding standards, dependency policies, security defaults and testing practices across the chapter, reducing bus-factor risk through shared ownership.
- Contribute to build-or-not decisions alongside product owners, translating technical constraints and integration complexity into options the product team can act on.
- Collaborate with analytics engineers on Python and Spark integrations, and review technical design documents to raise the quality bar across the team.
- 6+ years of professional backend engineering experience with Java as your primary language, and a solid track record across complex, production-grade systems.
- Expert-level Java 17+ with deep knowledge of Spring Boot or Quarkus, and strong JVM internals: garbage collection tuning, memory profiling, heap and thread dump analysis.
- Production Kafka experience at depth: producers, consumers, idempotency handling and schema evolution, not familiarity, but real operational ownership.
- REST API design with OpenAPI, including versioning strategy and backward compatibility across release cycles; strong JPA/Hibernate, JDBC and database migration tooling (Flyway or Liquibase); PostgreSQL query optimisation, indexing, partitioning and large-table migrations.
- Docker, Kubernetes and Helm in production packaging contexts, not only local development; CI/CD pipelines (Jenkins or GitHub Actions); security and quality tooling including SonarQube, dependency scanning, SBOMs and image signing used in a real delivery pipeline.
- OIDC and Keycloak at the integration and usage level for authentication and authorisation; secrets management, TLS and RBAC; structured logging, metrics and observability tooling (Grafana, OpenSearch or equivalent).
- Clear written and verbal communication in English with both engineering and product stakeholders; a degree in computer science or software engineering, or equivalent professional experience that demonstrates the same capability.
- Eligibility to obtain and maintain the required national or NATO security clearance for this role (we support candidates through the clearance process).
- Legacy integration depth: Oracle, SQL Server, PL/SQL, SOAP or batch file exchange in production contexts.
- Air-gapped or offline software delivery experience, particularly using signed bundles or tooling such as Zarf; experience with FIPS mode or STIG-hardened environments is especially relevant given our deployment constraints.
- Advanced Keycloak administration and fine-grained authorisation configuration; reactive or async Java patterns using virtual threads or Project Reactor.
- Experience in regulated or defence-adjacent industries; working knowledge of Dutch or French.
Skills
- Analytics
- API
- Api Design
- Authentication
- CI/CD
- Docker
- Event Driven Architecture
- GitHub
- GitHub Actions
- Grafana
- Helm
- Hibernate
- Java
- Jdbc
- Jenkins
- JPA
- JVM
- Kafka
- Keycloak
- Kubernetes
- Observability
- OpenAPI
- OpenID
- OpenSearch
- Oracle
- PL/SQL
- PostgreSQL
- Python
- Quarkus
- RBAC
- REST
- Secrets Management
- SOAP
- SonarQube
- Spark
- Spring
- SQL
- SQL Server
- TLS