The process took 2 months. I interviewed at Lyft (Toronto, ON) in Nov 2024
Interview
I saw the posting on LinkedIn and applied in October. A recruiter emailed me a month later to set up a phone call to discuss my experience and the role. After that, I had a technical phone screen with a member of the team. They provided a detailed doc of what to expect and even a video of a mock interview which was very helpful for what to expect. They give you starter code to open in Xcode and have very detailed instructions. It was a fun interview but I didn't make it too far in the phone screening and was rejected a few days later.
Interview questions [1]
Question 1
I signed an NDA. They will provide you with prep material and make sure to watch the video! It wasn't the same question but very similar format.
Recruited reached out, scheduled a phone interview, which had 4 parts, then invited me to the office. 4 rounds there, 1. system design, 2. write an app you've designed, 3. code review with a bunch of RUDE ,ARROGANT, UNPROFESSIONAL fellows, 4. Behavioral interview with Engineering Manager. Apart from phone interview guy, and behavioral with EM every other interviewer brought someone else with them to shadow the process.
App had 1 main functionality and 3 bonuses. I did the main functionality with more than what they expected + 1 bonus item.
Obviously you write it in start up like manner, not with EVERY SINGLE EDGE CASE HANDLED in 1.5 hours.
Code review started, from the start, they first wanted to show they are superior, probably because I was going from FAANG! The reaction I got from one question made me pretty mad! They asked cliché question of difference between class and struct. I was listing differences, then I told one is passed by reference, the other one by value. One of the guys sneered and asked yeah but what's the meaning of by reference. I got a lot of negative signals like this throughout the interview. This session took like 1.5 hours. SUPER LONG!!!!
Interview questions [1]
Question 1
4 square at the bottom of the scree, each with one color, once you select one square, the selected color will be that color. (this part was prebuilt by them)
Now, use may select any of these colors, and tap on the screen, you should create a square with that color and put it on the screen .
Next, add a number to each square you put on the screen, e.g. if there are 2 green, 1 blue already in the screen next green one should be 3. (Use a dictionary to track latest number for each color, tracker = [UIColor: Int])
next implement undo functionality (use a stack)
last introduce a redo functionality (use a second stack)
On site interview:
Hit an API that returns photos, create a photo browsing app like Instagram)
I applied through a recruiter. The process took 1+ week. I interviewed at Lyft (San Francisco, CA) in May 2019
Interview
Don't waste your time specially if you are a top notch developer, but if you are junior or intermediate try it. There are a couple of developers who are not okay with candidates with more knowledge and experience than themselves getting hired there.
I wasted two days of my work taking days off doing, did the online small project interview, the interviewer liked it I answered all the questions and finished the project before the time ran out, went for on site interview finished first in person interview answered all the questions correctly I am 10 years iOS developers yes since ever the iPhone OS 2 came out so I know when my answers are right or wrong, in the onsite code assignment I finished the project in 2.5 hours they asked for, even finished the extra part, when they came to the room I saw they where surprised that I finished project with extras and with MVP pattern and all the those craps these days running around, a couple of them in the project review tried to trip me and screwing up with follow up question and answered most of them I think they got me in a question but other than that there was many questions in which a couple of them show they don't have deep knowledge of swift programming language.
Anyways after wasting my time answering all the questions and did 2 live projects their recruiter called me after 2 days saying they are not going ahead.
I wound;t go work there anyways it wasn't my type company but it was total waste of time.