You are viewing content from a past/completed QCon

Presentation: Artwork Personalization @Netflix

Track: Modern CS in the Real World

Location: Pacific LMNO

Duration: 10:35am - 11:25am

Day of week: Monday

Level: Intermediate

Persona: Architect, Data Engineering, ML Engineer

Share this on:

What You’ll Learn

  1. Understand how Netflix leverages machine learning to make recommendations and choose personalized artwork for those recommendations.

  2. Learn how a continuous feedback loop is used to get data, process it, and update recommendations.

  3. Hear how Netflix architected and designed their artwork personalization solution.


For many years, the main goal of the Netflix personalized recommendation system has been to get the right titles in front each of our members at the right time. With a catalog spanning thousands of titles and a diverse member base spanning over a hundred million accounts, recommending the titles that are just right for each member is crucial. But the job of recommendation does not end there. Why should you care about any particular title we recommend? What can we say about a new and unfamiliar title that will pique your interest? How do we convince you that a title is worth watching? Answering these questions is critical in helping our members discover great content, especially for unfamiliar titles. One way to do this is to consider the artwork or imagery we use to visually portray each title. If the artwork representing a title captures something compelling to you, then it acts as a gateway into that title and gives you some visual “evidence” for why the title might be good for you. Selecting good artwork is important because it may be the first time a member becomes aware of a title (and sometimes the only time), so it must speak to them in a meaningful way. In this talk, we will present an approach for personalizing the artwork we show for each title on the Netflix homepage. We will look at how to frame this as a machine learning problem using contextual multi-armed bandits in a recommendation system setting. We will also describe the algorithmic and system challenges involved in getting this type of approach for artwork personalization to succeed at Netflix scale. Finally, we will discuss some of the future opportunities that we see to expand and improve upon this approach.


What work do you do at Netflix?


I lead one of the Machine Learning and Recommendation teams at Netflix. We're responsible for the end-to-end machine learning that decides what shows up on the Netflix homepage across all our different experiences. When you log into Netflix, my team is responsible for what rows of TV shows and movies you see on the homepage. We select rows and titles to help our members quickly find something great to watch. For example, whether you see Popular on Netflix or Continue Watching at the top of your homepage. We also work on algorithms to personalize the imagery that we display for each title across the experience.


One-third of all Internet traffic at prime-time in North America flows through Netflix systems. How do you measure scale and volume for the amount of recommendations you’re making?


There are over 130 million Netflix subscribers and each home page has many different recommendations on it. Over 80% of what people watch comes from our recommendation systems. Each time you log in, you're typically seeing something new. So we’re serving up a huge number of recommendations to people on a regular basis.


Your talk is Artwork Personalization at Netflix. What’s the purpose, the motivation, and the scope of your talk?


Our personalization don't end with selecting what title we want to show to the member.  Each section of the screen is a precious piece of real estate so we want to ensure the member understands why this particular title is being shown to them, especially for a new original series or movies that we create. A great new title may only have one chance to really resonate with somebody, so we want to give it the best opportunity to make the connection with them.

To do this, we select the imagery based on the person’s viewing habits. For example, if we take a romantic comedy, maybe you've watched a lot of comedies so we show you a funny image from that movie. If another person watches more romances we may use an image of a couple from the movie on a date. It’s about helping a member understand what's in it for them by presenting the most appropriate imagery we have. This helps them find and enjoy that film.


Who is your target audience?


The target audience for the talk is people who have some background or are interested in machine learning. They should know some basic machine learning but would like to learn more about how to use bandits and contextual bandits. Bandits add new technical challenges by having to close a feedback loop. It's not just a classification or regression problem. You're actually putting something out there and then needing to pull the data back. Once it comes back, you then update your models and put them out again. It’s a continuous loop of improvement. So it’s an interesting application of machine learning that should be of useful to people facing similar challenges.


What technology problem keeps you up at night?


Making sure that when we're recommending titles we're actually showing the ones people want to watch and will enjoy. We know that when we show titles on the homepage, people are likely to click on them and watch them because they're ranked highly. But we want to make sure that our recommendations showcase the best way for people to spend their time on Netflix. We don’t want our recommendations to be influenced by feedback loops just due to us ranking them highly in the past because it may mean we don’t end up surfacing the content that people will enjoy the most.

Speaker: Justin Basilico

Machine Learning Research/Engineering Director @Netflix

Justin Basilico is a Research/Engineering Director for Page Algorithms Engineering at Netflix. He leads an applied research team focused on developing the next generation of algorithms used to generate the Netflix homepage through machine learning, recommender systems, and large-scale software engineering. Prior to Netflix, he worked on machine learning in the Cognitive Systems group at Sandia National Laboratories. He has an MS in Computer Science from Brown University and a BA in Computer Science from Pomona College.

Find Justin Basilico at


  • Practices of DevOps & Lean Thinking

    Practical approaches using DevOps and a lean approach to delivering software.

  • Microservices Patterns & Practices

    What's the last mile for deploying your service? Learn techniques from the world's most innovative shops on managing and operating Microservices at scale.

  • Bare Knuckle Performance

    Killing latency and getting the most out of your hardware

  • Architectures You've Always Wondered About

    Next-gen architectures from the most admired companies in software, such as Netflix, Google, Facebook, Twitter, & more

  • Machine Learning for Developers

    AI/ML is more approachable than ever. Discover how deep learning and ML is being used in practice. Topics include: TensorFlow, TPUs, Keras, PyTorch & more. No PhD required.

  • Production Readiness: Building Resilient Systems

    Making systems resilient involves people and tech. Learn about strategies being used from chaos testing to distributed systems clustering.

  • Regulation, Risk and Compliance

    With so much uncertainty, how do you bulkhead your organization and technology choices? Learn strategies for dealing with uncertainty.

  • Languages of Infrastructure

    This track explores languages being used to code the infrastructure. Expect practices on toolkits and languages like Cloudformation, Terraform, Python, Go, Rust, Erlang.

  • Building & Scaling High-Performing Teams

    To have a high-performing team, everybody on it has to feel and act like an owner. Organizational health and psychological safety are foundational underpinnings to support ownership.

  • Evolving the JVM

    The JVM continues to evolve. We’ll look at how things are evolving. Covering Kotlin, Clojure, Java, OpenJDK, and Graal. Expect polyglot, multi-VM, performance, and more.

  • Trust, Safety & Security

    Privacy, confidentiality, safety and security: learning from the frontlines.

  • JavaScript & Transpiler/WebAssembly Track

    JavaScript is the language of the web. Latest practices for JavaScript development in and how transpilers are affecting the way we work. We’ll also look at the work being done with WebAssembly.

  • Living on the Edge: The World of Edge Compute From Device to Application Edge

    Applied, practical & real-world deep-dive into industry adoption of OS, containers and virtualization, including Linux on.

  • Software Supply Chain

    Securing the container image supply chain (containers + orchestration + security + DevOps).

  • Modern CS in the Real World

    Thoughts pushing software forward, including consensus, CRDT's, formal methods & probabilistic programming.

  • Tech Ethics: The Intersection of Human Welfare & STEM

    What does it mean to be ethical in software? Hear how the discussion is evolving and what is being said in ethics.

  • Optimizing Yourself: Human Skills for Individuals

    Better teams start with a better self. Learn practical skills for IC.

  • Modern Data Architectures

    Today’s systems move huge volumes of data. Hear how places like LinkedIn, Facebook, Uber and more built their systems and learn from their mistakes.