Tech Stack
Tag name is followed by "@" symbol and proficiency level value.
About proficiency levels:
- 1-2 — basic awareness. Minimal hands-on experience, and a rudimentary understanding of the technology's purpose;
- 3-6 — daily use. Comfortable and regular usage, capable of handling common tasks and challenges related to the technology;
- 7-9 — you are an expert, you can teach others, you know all the pitfalls and tricks;
- 10 — exceptional knowledge, comprehensive understanding, and adeptness in all aspects of the technology, including advanced problem-solving. Think twice before claiming or demanding such level.
API
AWS
AWS Lambda
Automated Testing @ 5
Communication @ 3
Experimentation
Java @ 5
Kafka
Kinesis
Kubernetes
Maven @ 3
Protobuf
Rust
Spring Boot
- 1-2 — basic awareness. Minimal hands-on experience, and a rudimentary understanding of the technology's purpose;
- 3-6 — daily use. Comfortable and regular usage, capable of handling common tasks and challenges related to the technology;
- 7-9 — you are an expert, you can teach others, you know all the pitfalls and tricks;
- 10 — exceptional knowledge, comprehensive understanding, and adeptness in all aspects of the technology, including advanced problem-solving. Think twice before claiming or demanding such level.
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
Senior SAP FICO Specialist
Booking.com · Bengaluru, India
EUR 10-38 per hour
Senior Site Reliability Engineer (For Independent Contractors)
Booking.com · Amsterdam, Netherlands
EUR 60-135 per hour
Data Analytics Engineer
Booking.com · Amsterdam, Netherlands
EUR 50-103 per hour
Senior Machine Learning Scientist
Booking.com · Amsterdam, Netherlands
EUR 60-120 per hour
Senior Software Engineer (For Independent Contractors)
Booking.com · Amsterdam, Netherlands
EUR 60-120 per hour
Similar jobs
Senior Software Engineer
SentinelOne · United States
USD 132,000-182,000 per year
IT Engineer Intern
ABN AMRO · Amsterdam, Netherlands
EUR 9,000 per year
Solution Designer
ING · Milan, Italy
EUR 50,000 per year
Backend Engineer – Senior – Go – Saily
Nord Security · Poland
PLN 288,000-400,800 per year
Backend Engineer · Senior · Transition to Go · Saily
Nord Security · Poland
PLN 288,000-400,800 per year
Software Engineer, Product Security Data Platforms
Stripe · United States, New York City, United States, Seattle, United States
USD 158,800-238,200 per year
Staff Backend Software Engineer, Agent Platform
SentinelOne · United States
USD 156,000-215,000 per year
Senior Software Engineer, Attestation Services – DGX Cloud
Nvidia · Santa Clara, United States
USD 224,000-431,200 per year