Software Engineer II

EUR 50-100 per hour
MIDDLE
✅ Hybrid ✅ On-site
✅ Contract / Freelance

Tech Stack

API AWS AWS Lambda Automated Testing @ 5 Communication @ 3 Experimentation Java @ 5 Kafka Kinesis Kubernetes Maven @ 3 Protobuf Rust Spring Boot

Details

Booking.com runs large-scale experiments as a vital part of its software development cycle. The Experimentation Platform enables product teams to make data-driven decisions by safely assigning experiments, collecting tracking data, and providing statistically reliable metrics across user interactions.

As a Software Engineer II, you will own the execution of technical elements in the platform. You will implement solutions based on business requirements, estimate the effort and impact of your work, and deliver software and test automation to a high standard. The role can include SDKs, frameworks, tooling, services, and infrastructure automation, depending on the needs of the team.

Responsibilities

  • Build and maintain Java applications, libraries, and platform components using readable, reusable code, standard patterns, and appropriate testing techniques.
  • Design and evolve experimentation SDKs and services, considering functional requirements, non-functional requirements, cost, maintainability, and future change.
  • Own software end to end by monitoring application health and performance, supporting deployment and production operations, and maintaining runbooks and operational documentation.
  • Address production incidents within agreed service levels, mitigate customer impact, contribute to postmortems, and implement long-term fixes through root-cause analysis.
  • Evaluate architectural options and provide technical guidance that fits the wider systems and infrastructure landscape.
  • Improve code, processes, and systems through refactoring, automation, performance improvements, and continuous quality improvement.
  • Work closely with product owners, peers, and colleagues in other roles to design, prioritize, and implement technical work. This role may include an on-call rotation.

Requirements

  • Approximately 3–5 years of relevant software-engineering experience, or equivalent practical experience.
  • Proficiency building production software in Java, including readable code, standard libraries, automated testing, and secure handling of data.
  • Experience with Maven and Java dependency management. Familiarity with Gradle or Bazel is useful because Booking’s Java ecosystem uses multiple build systems.
  • Experience with end-to-end ownership of a service, including monitoring, deployment, production operations, and incident management.
  • Experience with software-systems design and the ability to evaluate architecture options and explain their implications.
  • Strong critical-thinking and continuous-improvement skills, with a structured approach to identifying underlying issues and improving processes or systems.
  • Clear, adaptable communication with peers, product owners, and stakeholders, including the ability to ask effective questions and reach workable solutions.

Required Technology Stack

  • Spring Boot or another large-scale Java service framework.
  • AWS Lambda, Kubernetes, or EKS.
  • Kafka, Protobuf, Kinesis, S3, and streaming or event-driven architectures.
  • SDK, library, or API design, including backward compatibility and consumer migration.

Helpful Experience

  • Experimentation systems, feature assignment, state blobs, event tracking, or analytics pipelines.
  • JNI, FFI, Rust, C, or other native-library integration techniques.

More jobs at Booking.com

Similar jobs