Senior Software Engineer, Search & Recommendations (Machine Learning)
 San Jose, CA

Roku pioneered streaming for the TV, and we aspire to power every TV in the world. We believe that all television will be streamed, and that all TVs and set-top-boxes will be powered by software-based operating systems that provide a dramatically better user experience than has existed historically for the TV.

We are looking for outstanding, creative and passionate Machine Learning engineers to join our Search & Recommendation team. As an early member in a growing team, you will be responsible for building and owning the next-generation of algorithms and systems that will make the experience for our many million Roku users 100% personalized and unique.


  • 2+ years of industry experience applying Machine Learning to concrete problems, especially related to personalization
  • Strong background in Machine Learning and Recommender Systems, with deep understanding of algorithms and evaluation methods
  • Great coding skills and strong software development experience (we use Spark, Scala and Java a lot, and we will expect the same from you)
  • Proven track record of ownership in successful projects
  • Demonstrated ability to design and implement complex software systems in a proactive, self-driven and practical way
  • MS in Computer Science, Statistics, or related field


  • Build Recommender Systems for a living
  • Work daily with Apache Spark and write your algorithms in Scala
  • Develop your systems on AWS (EC2, S3, DynamoDB, CloudFormation)
  • Have work experience with NoSQL databases, such as Redis
  • Hold a PhD in ML or Recommender Systems

If you are results oriented, and are excited by the idea that Roku success will depend on your ability to deliver cutting edge ML products, then we at Search & Recommendation team would love to talk to you!!