The interview process was professional and smooth.
I had an initial recruiter phone call, after which I was scheduled to speak with one of the senior engineers on their team.
The interview was difficult. There were two questions asked in the interview on CoderPad:
A small Android challenge. This included some basic questions about Android and then a deep-dive into a specific topic. It seemed like the interviewer was looking for a specific answer, and I found it hard to gauge what he was looking for. In the end, he gave me a hint, and then I answered.
A coding question. This was a difficult problem to solve, comparable to a LeetCode hard problem. The interviewer was very specific about what he wanted.
The question was to implement an LRU cache using only an ArrayList for the backing data structure. It is solvable if you can use another data structure like a HashMap or obviously a Queue (which kind of defeats the point). However, a single ArrayList made it tricky to implement a working solution that passed the interviewer's test cases within 25-30 minutes.
Implement an LRU cache where the backing data structure is an ArrayList.
The following metrics were computed from 2 interview experiences for the Lyft Senior Android Developer role in United States.
Lyft's interview process for their Senior Android Developer roles in the United States is extremely selective, failing the vast majority of engineers.
Candidates reported having very good feelings for Lyft's Senior Android Developer interview process in United States.