Not all developers have the skills, drive, or opportunity to ever work at Google. However, if you’ve Google tapped you to interview with this giant of a company, then you may be concerned you’re not prepared. Of course, most skilled developers have been through coding interviews before. Still, major tech companies like Google can have specific requirements or processes they follow. You’ll need to understand these to ensure you are well prepared for your Google coding interview.
Algo.Monster will go over the interview process and some of the general coding interview requirements. In addition, we’ll cover anything specific to the google coding interview, as that will be an essential aspect not apparent to you.
Google Interview Process
For a quick overview of what to expect through the entire interview process with Google, check out the details below.
- You can expect around 5-7 different interviews, many of which include coding interview questions.
- Google will perform one remote or phone screening interview to weed out any terrible candidates. This interview will be around 30-60 minutes, and this will mostly be questions about you and your development experience.
- If you get through the remote session, Google will invite you to interview onsite with google. This involves 4-6 one-hour-long interviews with a strong focus on coding, and these are your coding interviews. The interviews could go longer if there are specific aspects the interviewer wants to test you on or find out about.
- The entire interview process can take around two months. You should continue improving and practicing your coding interview skills during the whole process, so you don’t get rusty or forget anything.
Google Coding Interview Process: Unique Aspects
There are a few unique aspects of the Google coding interview process and their selection, this includes:
- You will perform all coding in Google Docs for remote sessions. Make sure you are practicing and can write code in this. For onsite interviews, Google will give you a Chromebook to use, or in some cases, it may just be a whiteboard.
- They have a hiring committee that will review your application. So it isn’t always about the interviewer, but their recommendations are required.
- Google will grade you from 1-4 on all your interviews. If you don’t get at least a 3, you won’t pass the coding interview process.
- Google will review you as a person based on the Google hiring criteria, which is:
- Cognitive Ability
How you solve problems. If you are regurgitating learned information with no real understanding or ability to think outside the box, that is not ideal. Google wants to know you can come up with multiple solutions and implement the best one.
Can you take on a leadership role for specific projects? If you are a follower only, then Google may not want you. Instead, you should be discussing times you lead a project or team.
- Role-related knowledge
Google hires on a team basis. So you should have specific knowledge required for the team you are applying for. They also want to know you can grow as the team grows and evolves. So a track record of changes and continued learning is essential.
Can you tackle anything that comes your way? Being comfortable and not tackling challenges is not the google way. Make sure you discuss your ability to take on unexpected issues or opportunities.
Google Coding Interview Process: Preferred Programming Languages
You should perform coding interviews in whatever language you are best with. However, don’t try to impress anybody with the language you select, and ensure you write actual code, not pseudocode.
Google does have a preference for the programming language you select though, their preferences are:
You will be required to know APIs, Object Orientated Design, how to test your code, and come up with corner or edge cases. So ensure you have that ability in the programming language you select.
Most importantly, stick with one programming language. Don’t change during the interview process, and especially don’t change mid-interview.
If you don’t know at least one of these languages well, then you may want to consider if Google is the right company for you.
Google Coding Interview Preparation
Google is constantly modifying and changing. They are a tech leader who is not following what other companies are doing. So be prepared for changes, don’t memorize questions or focus only on questions you think google has asked in the past. Instead, make sure you focus on the fundamentals outlined below but test yourself in all areas leading up to the interview.
LeetCode.com is an excellent source of practice coding interview questions. Practice as many and as often as you can. As mentioned, don’t eliminate any questions just before they don’t fall within the details below.
Google Coding Interview Types of Questions Asked
At its core, a coding interview is about being asked a question or given a task and then writing code. The unique factors may be what types of questions each company favors.
Coding interviews almost always require a good understanding of data structures and algorithms. Therefore, ensure you have a thorough knowledge of the most common in each category.
Data structures you should be studying or familiar with are:
- Linked Lists
- Hash Sets
- Hash Maps
Algorithms you should be studying or be familiar with are:
- Breadth-first search
- Depth-first search
- Binary search
- Dynamic programming
- Divide and conquer
Google does have a preference, and some of its most common questions or themes are around the following topics:
Sum of two values
- Linked Lists
Delete node with the given key
Mirror binary trees
- Dynamic Programming
Largest sum subarray
- Math and Stats
Determine if numbers are valid
Print a balanced brace combination
Minimum spanning tree
Implement an LRU cache
- Sorting and Searching
Find high and low index
Finals Tips on Google Coding Interview Preparation
- Study and practice the fundamentals of data structures and algorithms.
- Spend at least 4 to 12 weeks preparing and studying.
- Use online coding interview practice sites to test your coding skills.
- Make sure you time yourself. Coding interviews are short, and you must complete coding interview questions. If you leave without finishing, then that would be a failure.
- Practice discussing your coding with colleagues or friends and have them rate how well you explained everything.