Overview

Position

We are seeking machine learning software engineers to join an ambitious, early stage effort to bring our data science tools and infrastructure to the next level. Data science plays a vital, closely integrated function at KAYAK and this role will directly impact every corner of our business. You will have the opportunity to innovate and exercise your inner engineering creativity towards shaping our in-house platform for conceptualizing, building, and deploying machine learning models. This platform is fundamental to every stage of our ML product development process.

The role is focused on developing and architecting tools and infrastructure to design, implement, and deploy data science models in high-volume production environments. It will involve implementing software solutions with a wide range of goals such as the ingestion of and experimentation with large datasets, the organization of business metrics, and the productionization of machine learning models in large-scale settings.

As part of our team, you’ll collaborate with strong applied researchers and engineers in Europe and around the world, and your work will have tangible impact. You will be challenged; you will have an opportunity to shape our business, and by extension, the wider travel industry. You will expand your competence and explore technologies at the intersection of AI, systems engineering, computation, and product delivery at scale.

This role is open to KAYAK’s “work from almost anywhere” remote policy, and positions at different levels of seniority are available.

Responsibilities

Develop and maintain the KAYAK/OpenTable platform for hosting data science models as a service
Frame, design and execute solutions to ML engineering challenges that arise as we scale-up and standardize our data science processes; assist data scientists with the engineering and deployment of scalable machine learning models
Monitor and optimize services running in production environments
Design and implement tools for automating common tasks
Build web UIs and APIs for consoles to enable internal users to manage processes
Design and implement databases for organizing business metrics
Engage in group problem-solving, and collaborative team efforts
Desired Qualifications

Comfortable with systems design and software engineering to the extent necessary to tackle production machine learning engineering challenges. A Bachelor’s degree in a quantitative field (computer science, engineering, physics, math etc.), is preferred but is not strictly required: what you can do (or quickly learn to do) is more important.
Solid application development experience using Python
Experience using Python ML-ecosystem libraries such as pandas, numpy or scikit-learn in production
Experience with SQL databases
Experience with Docker/containerization
Comfortable collaborating in a dynamic, cross-functional team: you know how to listen, ask questions, build consensus, advocate (with data), and share success. You are willing to assume leadership and ownership over technological, business, or team responsibilities.
Strong written and verbal communication skills: you can communicate clearly and effectively with peers and non-technical stakeholders alike. You can explain your plan for solving a business problem clearly, and document your work concisely.