Senior Java Engineer – Global Customer Data Management Platform
About the role
Our client is a large international financial institution building a global, high-availability platform for managing customer data. The platform is the organisation’s central system of record for customer information, serving retail, business, and wholesale client segments, and must be available 24/7 at high volume and high speed.
You will join a multidisciplinary, international, stream-aligned agile team responsible for the full lifecycle of the systems it builds – from refining user stories with business stakeholders through development to running the software in production (BizDevOps). The team works with global APIs and collaborates closely with the Product Owner, Chapter/Journey Experts, and peer engineers to translate business requirements into working features. The organisation follows an inner-source model, meaning teams across the company can contribute to a shared codebase, and is organised for fast flow using Team Topologies principles.
Responsibilities
- Design, build, and operate Spring Boot APIs following hexagonal architecture and domain-driven design principles.
- Own features end-to-end: from refining requirements with business and product stakeholders to writing clean, well-tested code and monitoring it in production.
- Validate implementations using behaviour-driven development (BDD) to ensure features work as intended.
- Collaborate with the Product Owner, business stakeholders, and peer engineers to translate business needs into technical solutions.
- Take initiative and help set technical direction within the team; challenge the status quo and propose improvements to quality, maintainability, and ease of use.
- Design reusable code components and libraries that can be leveraged across multiple teams and projects.
- Coach and mentor less experienced engineers.
- Participate in an on-call/standby rotation to support production systems outside office hours.
- Resolve production incidents, perform root-cause analysis, and use observability tooling to detect and prevent issues.
Tech stack
- Java 21+ and Spring Boot (API development)
- Hexagonal architecture and Domain-Driven Design
- Databases: Cassandra, Neo4J (nice to have), Elasticsearch, Azure SQL, and a third-party MDM platform
- Streaming: Kafka
- Build & testing: Maven, Cucumber (BDD)
- CI/CD pipelines
- Observability: Prometheus, Grafana, ELK
- AI-assisted development: GitHub Copilot – working with agents, skills, etc.
Must-have requirements
- 6-8 years of professional experience developing with Java and Spring technologies.
- Strong hands-on experience with Java 21 and Spring Boot for API development.
- Experience with hexagonal architecture and domain-driven design.
- Solid grounding in software best practices: TDD, BDD, DDD, and clean code.
- Proven experience running software in production, including incident resolution and monitoring.
- Experience with streaming technologies, specifically Kafka.
- Experience with NoSQL and relational databases (e.g. Neo4J, DB2, Cassandra, Elasticsearch) – Neo4J experience is a strong plus.
- Demonstrated ability to coach and mentor less experienced team members.
- Ownership mindset – able to take initiative and lead on technical direction.
- Strong communication and stakeholder-management skills.
- Experience working in a corporate and/or financial agile environment (DevOps, Scrum). Fluent Dutch is not required.
Nice-to-have
- Experience with AI tools – working with agents, skills, etc., using GitHub Copilot.
- Neo4J experience.
- Experience at a large international bank.
Working conditions
- Standby/on-call duty approximately 3-4 times per year (roughly one week of standby annually), compensated. This starts around 6 months after onboarding.
- Production releases are scheduled within a defined change window of 06:00-12:00.
- A motivational letter is appreciated but optional.
3 core skills for candidate screening
Java, Spring Boot, Kafka (backend-oriented) – 6-8 years of experience.