Full Time Job

Senior Software Engineer, Machine Learning For Personalization

Netflix

Los Gatos, CA 11-02-2021
Apply @ Employer
  • Paid
  • Full Time
  • Senior (5-10 years) Experience
Job Description
As Netflix continues to grow around the world, we face new and exciting challenges for our machine learning systems so that we can build the perfect homepage for each of our over 200M members. We need to handle the scale and diversity of tastes of people around the world. We seek to enable new user interface and interaction paradigms by ensuring that we use every piece of screen real-estate in an effective manner. We balance many factors such as: accuracy and diversity; discovery and continuation; exploration and maximization; existing and launching items; immediate engagement and long-term satisfaction. To do this requires our machine learning algorithms and systems for creating the home page to elevate to the next level.

The Page Algorithms Engineering team is looking for a passionate and talented software engineer to join us. In this role, you will create the software that enables our end-to-end machine learning research and development. You will work closely with our machine learning researchers, product managers, and other engineers to come up with new systems, improve existing ones, and also take on offline experiments and A/B tests. For more details about Netflix personalization, see these links:
• Recent Trends in Personalization at Netflix
• Learning a Personalized Homepage
• Page Simulation for Better Offline Metrics at Netflix

As a software engineer in the team, you will contribute to the next generation of algorithms used to generate the Netflix home page by driving the vision, requirements, design, implementation, testing, and ownership of software components essential for our algorithmic innovation. This extends across our experimentation and production pipelines for training, features, labels, metrics, and publishing along with the online aspects of model evaluation, logging, monitoring, etc. You will team up with our applied researchers and data scientists to implement scalable, flexible, production-ready solutions for our algorithms. You will also guide the team towards better software engineering practices and systems by identifying areas for improvement and mentorship. You will also collaborate with other engineers to create solutions that are used beyond our team in other areas that we do personalization or machine learning. To be successful in this role, you have a strong software engineering background, a keen sense of software engineering principles and design, a proven experience with large-scale applications, a love of learning, are a good communicator, and work well in large cross-functional teams.

What we are looking for:
• 5+ years of software engineering experience with a track record of delivering quality results
• Strong software design and development skills (Scala, Java, C#, or C++)
• Clear understanding of a variety of software engineering practices and when to use them
• Experience building web-scale parallel and distributed computing systems
• Experience with large-scale data frameworks such as Spark, Hive, or Hadoop
• Great collaboration skills
• BS in Computer Science or related field or equivalent practical experience

Preferred, but not required:
• Experience building personalization systems or machine learning platforms
• Knowledge of machine learning algorithms
• Experience with Python and machine learning tools such as TensorFlow, Keras, or PyTorch
• Strong background in math, statistics, or numerical computation
• Experience with cloud computing platforms like AWS

Jobcode: Reference SBJ-gmwox3-54-158-251-104-42 in your application.