Status: 7.5 YOE
Position: Tech Lead at a top paying startup.
Location:
Technical Phone Screen : Skipped for me as I had other competing offers and was in a tight schedule. Thanks to the recruiter!
Onsites:
Round 1: DS, Problem Solving
Related to tree. Go through Construct Quad Tree and Introduction to N-ary Trees from Leetcode. You should be able to solve after going through these.
Round 2: Android Live Coding Round
They gave an Android project where I had to do, Code review, fix bugs, implement certain simple features, give architecture decisions and process guidelines for it to be scalable across multiple developers. (Lint rules, Github review actions).
Apart from just regular coding, they give importance to code review and process related things for Senior role.
Round 3: Android System Design Round
Go through few popular mobile apps like, Instagram, Whatsapp, Google Photos, Google Calendar, Online multiplayer chess game.
One of the above or very similar app requirement will be given.
You need to come up with high level system design. Follow existing backend system design template, and replace backend module with mobile module in your preparation. Be sure to talk about all the mobile specific edge cases like,
mobile network lost, battery drain, storage constraint and syncing issues.
One advice: BE HONEST. I never followed existing STAR kind of template. Hiring managers are too smart and they will figure out if you are telling prepared made-up answers or honest answers.
Round 5: Bar Raiser
Past projects deep dive. I got a chance to discuss with one of the very early Uber engineer who is Engg Manager 2 now.
He asked me questions in depth about my previous project. Be very well prepared to remember all your project details.