Building User Interest Profiles in Real-time for a Content Recommender System Content recommender systems are widely used today to help users discover content they love that they never knew existed. Some common applications are to power news feeds of social networks, as modules inside personal digital assistants and as promoted content widgets on publisher sites. At Rover we have built a content recommender system for use in our apps, that automatically learns a user's interests by analyzing their content consumption habits to recommend content that is personalized, interesting and timely. In our experiments, we have observed that one of the key features impacting recommendation quality is deep personalization. The more interest segments we were able to map users and content into, the greater the gains in CTR on content recommendations, length-normalized dwell time on content post click etc. Since most users would not take the time to explicitly communicate their interest preferences to the recommender system up front and would definitely not be able to keep it up to date as their interests evolve, it is important for the system to learn a user interest profile automatically, quickly and accurately by passively observing their content consumption habits. This becomes even more relevant in a system like Rover that builds fine grained user interest profiles spanning thousands of interests, with affinity scores that capture a user's attachment to an interest category. Rover uses a state of the art, highly scalable supervised machine learning algorithm to infer the topicality of content by categorizing content into a closed topical taxonomy with over 3000 leaf level interests (eg. Sports/Motorsports/Auto_Racing/Formula_One). A user's interest profile is built and updated based on the topicality of the content she engages with. The system also extracts topically constrained named entities from content the user engages with which helps capture more specific features of the content that interested the user eg. articles on entrepreneurship that mention Steve Jobs or Elon Musk. The system infers user interests from web browsing history and content consumed within the Rover app. This interest profile is then used by the recommender system alongside other signals to recommend a list of content items that the user would find most interesting given their current context. Some of the challenges a system like this needs to address are short term interests vs long term interests, common vs rare interests, content diversity, data sparsity, exploration vs exploitation, interplay of the interest graph with the social graph, time decay of the interest graph etc. This talk will cover some of our key learnings at Rover while building a large scale ML system that learns deep user interest profiles for use in our content recommendation engine.