• You have deals with N big media companies who each have their own restrictions on who can stream what from where. The list is constantly changing, so permissions to view media are locale-specific and revokable; you need a way to say “okay this person is not allowed any more to do that.”
• Multiple-screen detection emphatically needs to be rock solid. Someone is going to unplug their Roku player when their laptop says “you're watching from too many screens,” and by the time they get back to their laptop you need to be detecting them as streaming from 0 screens. At the same time a hiccup in this process shouldn't cause like 3% of your users to get a big streaming interruption as they don't seem to be online.
• You have to recommend stuff based on what this person has watched. An acquisition team needs to do cluster analysis on this to get new stuff to fill all of the different clusters of interests that emerge in your user base.
• People will search for shows you don't have. (Because of point 1, the big media companies only permit access to a fraction of their backlog.) You have to know this media that you don't have access to, well enough to recommend something related that might keep the user on Netflix instead of hopping to another service.
• All of this has to happen on pretty low latencies when someone starts up Netflix. That is, anybody who jumps into Netflix should see a personalized view of what they were watching, what they can watch, filtered by your allow lists and not cached on their device, within just a few seconds.
• All of this has to be portable to all of the different platforms Netflix supports.