Booking UK
Software Engineer (For temp workers)
A Software Engineer II owns the design and delivery of software solutions based on business requirements, deploying and monitoring code in production independently within their team scope. They show a high quality of craft in what they deliver and use solid engineering practices to build reliable, secure and maintainable systems.
Software Engineers II are expected to work closely with colleagues in other roles (engineering, product, finance, compliance and operations) to design, prioritise and implement technical work within the Trips Data Finance domain. You will actively work with other members of the team through pairing, code reviews and knowledge sharing. You will work independently and will also be responsible for making technical decisions within a cross-functional team.
The Trips Data Finance team is responsible for providing accurate and timely financial data from multiple sources across the business to our Enterprise Resource Planning (SAP) platform and other critical financial processes.
Our technical scope includes:
APIs built in Java / Spring Boot
Backend services built in Python and Node.js
Microsoft SQL Server and SQL Server Integration Services (SSIS)
A cloud-first (AWS) approach
Container orchestration with Kubernetes
Infrastructure as Code using TypeScript and AWS CDK
Experience with big data tools such as Apache Spark is a plus, but not essential.
As a worldwide company, we must comply with both national and international legislation, including SOX, GDPR/PII and DMA. You will be expected to follow these requirements in your day-to-day work, and to support activities required to demonstrate compliance to both internal and external auditors (for example by providing evidence, improving observability and maintaining documentation).
The current team has a strong technical base and good understanding of business requirements. We are looking for an additional Software Engineer II to help design, build and operate solutions that meet our legal, compliance and business obligations while reducing risk to our ERP (SAP) and surrounding systems.
We are looking for a proactive engineer and strong communicator who takes ownership within the team, can collaborate effectively across functions, and contributes to helping the team become increasingly autonomous, adaptable and focused on critical thinking.
Key Responsibilities and Duties
Build software applications using the relevant development languages and frameworks in our stack (primarily Java / Spring Boot, with some Node.js and Python where applicable).
Write readable, maintainable and reusable code by applying standard patterns, using standard libraries and following agreed engineering guidelines.
Ensure the quality of the application by following standard testing techniques and methods that adhere to the team’s test strategy (including unit, integration and functional tests).
Maintain data security, integrity and quality by effectively following company standards and best practices, especially in SOX- and GDPR-relevant areas.
Contribute to end-to-end ownership of services by helping to deploy, monitor and operate applications in production, tracking relevant metrics (SLIs/SLOs/KPIs) and acting on alerts or threshold breaches together with the team.
Help address and resolve live production issues, mitigating customer and business impact within SLA, and participating in follow-up postmortems and RFOs where appropriate.
Improve the overall reliability of systems by contributing to root cause analysis and implementing pragmatic, long-term fixes that reduce repeat incidents.
Meet business needs by designing solutions that satisfy current requirements and are adaptable for future enhancements within the scope of the team.
Systematically identify patterns and underlying issues in complex situations, and find solutions by applying logical and analytical thinking.
Identify opportunities for process, system and structural improvements (e.g. performance, reliability, developer experience) by examining current process flows, methods and standards, and help implement these improvements with the team.
Deliver clear, well-structured and meaningful information to technical and non-technical audiences, using appropriate communication channels.
Ask relevant follow-up questions to truly understand what others are saying, applying active listening and reflection techniques.
Collaborate with product managers, finance stakeholders and more senior engineers to shape technical solutions that meet functional and non-functional requirements, highlighting trade-offs and escalating broader architectural concerns to senior or principal engineers when needed.
Qualifications & Skills
A minimum of 5 years of professional experience in Java / Spring Boot backend software development (or equivalent experience in a similar JVM backend ecosystem).
Strong experience with relational databases, ideally Microsoft SQL Server, including writing and optimising SQL.
Experience working with or around SQL Server Integration Services (SSIS); hands-on development or maintenance of SSIS packages is a strong plus.
Experience with surrounding technologies such as Git, Gradle, AWS, Kubernetes, CI/CD pipeline tooling (e.g. GitLab CI, Harness) and Docker.
Experience operating software in production environments (deploying changes, monitoring health, responding to incidents) within a team context.
Experience working with systems under SOX, GDPR/PII and/or DMA is an advantage; at minimum, you should be willing and able to learn and apply these requirements in your work.
Strong communication skills, both written and spoken, with the ability to collaborate effectively with engineering, product and finance stakeholders.