The process was fairly typical, but with a heavy emphasis on Design/Architecture interviews, more than I have experienced at other companies for a non-senior SWE role.
First, a recruiter reached out to me. She was really nice and asked standard questions like, "Tell me about one of your recent projects" and "Why are you interested in Lyft?" Afterwards, she said she wanted to move me along and set up a call beforehand for her to prep me for the interviews.
The technical screen interview was with a random engineer who asked me to solve a string manipulation problem via Coderpad. The question was reasonably complex, but Coderpad itself seemed to be bugging out and wouldn't compile anything, which ended up wasting a lot of time. I wasn't able to fully solve the problem with the remaining time. As a result, they asked me to re-interview with a different engineer. That engineer gave me a simple question that I solved right away, although I don't remember it anymore.
I recommend practicing some problems on Coderpad beforehand, as the editor is pretty "dumb" in comparison to other sites I'm used to, like HackerRank and LeetCode.
They moved me on to the on-site interviews, which consisted of four video interviews:
The behavioral interview was standard, nothing unexpected.
The design/architecture interviews asked exactly the same questions I have read in other reviews here. They want you to diagram a simple version of the system they describe and then dive into different parts to make them more sophisticated and production-like. We discussed message queues, replication, scaling, caching, and more. My interviewer also posed a math question, asking me how many unique keys I could generate with different primitive types. I struggled with the math questions, which led the interviewer to say that I was "weak with some computer fundamentals." I thought it was odd how much emphasis they put on the ability to draw up large-scale systems, given that this was a generalist software engineering role. At this level, I wouldn't expect to have much in-depth experience doing that.
The coding interview was 1.5 hours long and involved a common question asking me to implement add, remove, undo, redo, etc., operations in a class.
After the interviews, it seemed the recruiter forgot to let me know the decision. After I finally got the news that they had passed on me, she offered to set up a call to share the feedback, which I thought was really nice and helpful.
Also wanted to mention that none of my interviewers were female, which was a bit disappointing given their supposed emphasis on diversity. How do you expect to hire gender-diverse people with a gender-homogenous panel of interviewers?
See description above.
NDA
NDA
The following metrics were computed from 34 interview experiences for the Lyft Software Engineer role in San Francisco, California.
Lyft's interview process for their Software Engineer roles in San Francisco, California is very selective, failing most engineers who go through it.
Candidates reported having very good feelings for Lyft's Software Engineer interview process in San Francisco, California.