A recruiter at Uber had been persistent in communication with me, asking me to join for several months before I actually decided to interview with them. At the time, I was considering several options weighing technology opportunities against industries I enjoy working with.
I had been a huge fan of Uber from early on, even to the point of evangelizing taxi drivers in smaller cities to purchase black cars and get onboard, so making the choice to interview was an easy one (not to mention its one of the trendiest startups with a good valuation)
In researching Uber I learned that (like any company) there are people that fit and people that don't. Glassdoor reflected this. I suspected I would be at home in a place where people wanted to be inspired to do their best work.
I was interviewed by several people over a 4-5 hour period. Questions were standard -- all difficult and mostly technical. I wrote code, designed and talked about architecture, performed troubleshooting. I had a blast getting asked great questions about my work and craft. The team was impressive and had top engineers from top tech companies.
I'm familiar with tough software interviews and was ready to talk about anything on my resume in detail as well as fundamentals such as computation, bigO, data structures, algorithms, sorting, modern computers, unix, etc. If you are looking to prepare for an interview here, read up on how top companies (i.e. google, ms, fb, etc) approach interviewing and you'll do well.