THE lyft INTERVIEW
Looking to land a job at Lyft but don’t know what the process looks like?
Well, you’ve come to the right place. Detailed in this post is a look at the timeline of the interview process, preparation guidelines, and what's different or unique about Lyft's interview process as opposed to other tech companies.
THE lyft INTERVIEW explained
In the Lyft interview you will face around 5-6 interviews testing you on: problem solving/data structures/algorithms, architecture and design, behavioral, and a laptop assignment geared towards simulating the work you would do day-to-day.
BEFORE THE INTERVIEW
update your RESUME
Make sure you’ve updated your resume and in particular your LinkedIn profile; use deliverables and metrics when you can as they are concrete examples of what you’ve accomplished. Make sure to be as specific as possible.
Here is our guide on how to prepare for the coding interview with a 12-week plan.
CHOOSING YOUR LANGUAGE
Lyft does not require that you know any specific programming language before interviewing for a tech position. However, you should be familiar with the syntax of your preferred language such as Java, Python, C#, C/C++. You should also know some of the languages’ nuances, such as how memory management works, or the most commonly used collections, libraries, etc. Choose one you’re most comfortable with and stick to it.
Prescreen with recruiter
After reviewing your resume, you’ll be paired with a recruiter who will be your guide through the interview process at Lyft. This will be a 30 minute conversation.
If you successfully pass through the prescreen, you will be asked to come back to a phone interview. They will begin with some “getting to know you” questions. For example, we’ll ask about previous positions, what gets you excited, and what you are looking for in your next position.
Afterwards, you should be prepared to take an online coding challenge via coderpad. Biggest tip here is to explain your work. Don't be afraid to show how you would normally attack a problem. There are no wrong ways to go about it. Just be sure to demonstrate your process.
Problem Solving/Data Structures/Algorithms: Here, you'll be presented with a problem and you'll work to come up with an algorithm to solve it. Remember, you will be asked to discuss different approaches, trade-offs, and how you'd work through edge cases. Don't be afraid to ask questions as your interviewer will be there to help you out. For these types of questions (and depending on your interviewer) you can either use a whiteboard or a laptop. It's best to clarify with your recruiter beforehand. If you need a refresher on algorithms and data structures, please check out Grokking the Coding Interview: Patterns for Coding Questions.
Architecture and Design: System design is a little like a black box. There are no real "right" answers, in fact there are a lot of ways to solve an architectural related problem. Think of all the decisions, tradeoffs, and APIs you could use. Here, Lyft is hoping to get a glimpse into the way you think about problems and how you communicate those decisions. Typically you'll be working to solve problems of this nature:
design a way for your systems to communicate
propose an API
model out some database tables
or perform other tasks where you’ll be sketching out a solution involving many interconnected parts
This is an opportunity to go deeper into your experience. How have you seen things fail? What scaling issues are you anticipating? Where are you making sacrifices in order to make gains elsewhere? Being able to articulate trade-offs is incredibly valuable when working in Lyft’s ever-changing market.
If you need any assistance in studying up for the system design interview, then Grokking the System Design Interview will be a great source for you.
For these challenges, you will be presented with a problem statement, where you are supposed to create a module that takes an input file and produces output to a different file. In total you will have 90 minutes to complete this assignment. This is supposed to simulate a work environment, so don't be afraid to use all the tools you have at your disposal.
Your grade here is based on: Correctness, code quality, performance, and test coverage
THE OFFER / NO offer
From on-site to offer will take about another week or two. This is so management can either evaluate other candidates or to draft up your offer letter along with other logistics.
In the event that you don’t receive an offer, you’ll most likely have to wait six months to a year to re-apply. Don’t expect any feedback after your interview, but you can conclude that you either didn’t have enough experience or that it just wasn’t a fit culturally.
If you do receive a job offer, the hiring manager will call you to discuss salary, start date, etc.
This assignment is supposed to simulate the type of work you would do at Lyft day-in and day-out. You will have 90 minutes to complete your assessment. You can choose the work environment too. So if you like to listen to music, you can. If you like to chat with your interviewer, you can.
Need help preparing for the interview?
Check out the Definitive Interview Prep Roadmap,
written and reviewed by real hiring managers.