Booking NL
Software Engineer (For independent contractors)
As a Core Software Engineer at Booking.com, you will join the Platform Experience team to lead high-impact modernization initiatives. You will be responsible for re-architecting legacy systems into scalable, cloud-native services that power our global partner ecosystem.
The Role
You will drive four critical pillars of our platform evolution: transitioning from Dropwizard to Spring Boot 3.x, migrating legacy database layers to JOOQ, decommissioning deprecated Perl/Java endpoints, and centralizing data access through the Partner Management API (PMA). This is a hands-on role requiring a balance of architectural migration and high-quality feature delivery.
Key Responsibilities
Platform Modernization: Lead the end-to-end refactoring of the PMA service, migrating multiple database integrations (Partnerships, Office, Finance, etc.) from legacy DBI to JOOQ.
Framework Evolution: Drive the migration of our service stack from Dropwizard to Spring Boot 3.x, ensuring seamless redeployment and infrastructure alignment.
System Decoupling: Eliminate direct database access from ~30 Perl scripts and 9 Java services by routing traffic through modern API endpoints.
Traffic Migration: Manage the lifecycle of legacy endpoints, including client updates, monitoring traffic patterns, and code removal to maintain a clean architecture.
Technical Excellence: Maintain >80% test coverage and ensure system reliability during complex migrations using feature flags and proactive monitoring (SLIs/SLOs).
Qualifications & Skills
Backend Expertise: 3+ years of experience with Java (Spring Boot preferred) and a strong understanding of relational databases (MySQL/PostgreSQL).
Migration Experience: Proven track record of refactoring legacy systems, migrating frameworks, or decomposing monolithic data access layers.
Data Layer Mastery: Experience with JOOQ or similar database mapping tools; familiarity with PII encryption (Soylent) and transaction management.
Scripting Knowledge: Ability to read and migrate Perl scripts to Java-based API calls is a significant plus.
Architectural Thinking: Ability to design batch operations and caching strategies to reduce HTTP overhead in distributed systems.
Communication: Excellent English skills to collaborate with cross-functional service owners and stakeholders.