Last month I interviewed for a senior DS role at Uber, so I'm sharing it here.
There were two technical rounds, each an hour long. They covered past projects and some case studies. Overall the difficulty wasn't that high, but I kept feeling like we weren't quite on the same wavelength — I probably wasn't giving the answers they were looking for.
The first round was with a DS director, who asked about projects I'd worked on before. They also asked: if Uber wanted to launch a new product, how would you design the experiment for it? Considerations included network effects and how to adjust for them. Could you use an instrumental variable? What are the assumptions behind IV? If the market has unlimited supply, do we still need to worry about network effects? Finally they asked a simple algorithm question: given two strings, how do you check whether they contain the same characters. For example, "abc" and "cab" are the same, but "aab" and "ab" are not, because the count of each letter is different. Then they asked what the complexity of the algorithm I wrote was, and how to optimize it.
The second round was with a DS manager, who focused heavily on past projects. Each project was discussed in real depth — I had to clearly explain what the business impact of that project was. Then there were some behavioral questions.
Discussion
Loading comments…