Java Engineer in Java Application Core Components team
Java Engineer in Java Application Core Components team
Requirements
5+ years of experience with Java backend development
Strong skills in core Java and code/API design
Track record of building high-quality software, with testing at all levels
A communicative, proactive team player who takes ownership, is decisive under ambiguity, and can act as a technical influencer with a multiplier mindset
Comfortable being a driver: able to build alignment with stakeholders and partners while pushing initiatives for our customers
Nice to have
Experience with Kubernetes/cloud migrations, legacy application modernization, security-related work or platform development experience
Experience developing and maintaining libraries/frameworks used by many other developers (either open source or internal)
Experience with build tools, ideally for Java (Gradle/Maven)
Broader architecture sense across distributed systems
Familiarity with Spring, Jersey, Feign, OpenAPI
Understanding of Domain-Driven Design (DDD) and Test-Driven Development (TDD)
Exposure to AI agent workflows and a DevOps mindset
Developer advocacy experience: public speaking or training/facilitation skills
What you will do
Design, build, and evolve the internal and open source Java frameworks and components used by every Java application team at Adyen
Play an active role in one or more of the team's 3 large-scale migrations that are reshaping Adyen's application architecture
Provide hands-on technical guidance to other engineering teams, by guiding them on how the frameworks and libraries we provide can be used to solve Adyen's business problems
Design and evolve workflows used by other engineering teams across Adyen, working closely with them to identify pain points and improvement opportunities
Collaborate with partner platform teams (Kubernetes infrastructure, deployment, security) to make sure our components integrate well across Adyen's tech stack
Advocate for best practices across Adyen and define boundaries/guidance on how the frameworks/libraries we maintain can be used. This should be achieved by creating code validation rules, running workshops and giving presentations to other development teams