0% found this document useful (0 votes)
71 views

Google Interview

The document provides information about Google's interview process for software engineering roles. It discusses the typical steps which include an online assessment, phone screens, and an onsite interview with multiple technical interviews. It also outlines what topics are commonly assessed such as graphs, trees, arrays, and strings. The onsite interviews evaluate coding skills, data structures and algorithms knowledge, communication skills, collaborative attitude, and time management. Overall, the document serves as a guide for candidates on how to prepare for Google interviews.

Uploaded by

Chintha Lalitha
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
71 views

Google Interview

The document provides information about Google's interview process for software engineering roles. It discusses the typical steps which include an online assessment, phone screens, and an onsite interview with multiple technical interviews. It also outlines what topics are commonly assessed such as graphs, trees, arrays, and strings. The onsite interviews evaluate coding skills, data structures and algorithms knowledge, communication skills, collaborative attitude, and time management. Overall, the document serves as a guide for candidates on how to prepare for Google interviews.

Uploaded by

Chintha Lalitha
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 18

JOURNEY TO

GOOGLE
Interview Process

● Resume Screening
● HR email or call
● Online Assessment
● Phone screening - 1 or 2
● Onsite - 4 to 6
Commonly Asked
● Graphs and Trees - 46%
● Arrays and Strings - 38%
● LinkedLists - 10%
● Searching and sorting - 2%
● Stacks and Queues - 2%
● Hash tables - 2%
Onsite Interviews

Interview 1 : Technical ( 45 Minutes )


Interview 2 : Technical + Googleyness & Leadership ( 60 Minutes )
Interview 3 : Technical + Googleyness & Leadership ( 60 Minutes )
Assessment Criteria
1. Coding
2. Data Structures & Algorithms
3. Good Communication
4. Collaborative Attitude
5. Time Management/Speed of solving the question (20 mins
per question)
1. Coding Criteria

BASICS

● Coding on Google Documents. "No IDE/Compiler" ( Practice writing code in a Google doc )
● Code as close fully functional working code (production level code)
● No Pseudo Code

GOOD CODE QUALITY & CODE FAST

● Please write well structured, clean and neat code with consistent coding style!
● Use proper syntax/indentation, but feel free to clarify uncommon APIs
● Use meaningful variable/function names.
● Your code should be very readable. No errors/bugs.

COVER FOR ALL EDGE/BOUNDARY CASES

TEST CASES (SAMPLE DRY RUN)


2. Data Structures & Algorithms

Frequently asked topics (in no particular order)

1. Binary search
2. BFS/DFS/Flood fill
3. Tree traversals
4. Hash tables
5. Linked list, stacks, queues, two pointers/sliding window
6. Binary heaps
7. Dynamic programming
8. Union find
9. Ad hoc/string manipulations
10. Arrays
11. Other good to know topics: Trie, segment trees/fenwick trees, bitmasks
You may want to explore these learning resources:

● https://www.coursera.org/learn/algorithms-part1
● https://www.coursera.org/learn/algorithms-part2
● https://www.udacity.com/course/intro-to-algorithms--cs215
● https://ocw.mit.edu/courses/electrical-engineering-and-computer-science
/6-006-introduction-to-algorithms-spring-2008/
● http://www.geeksforgeeks.org/top-10-algorithms-in-interview-questions/
● http://bigocheatsheet.com/
DS & ALGO ASSESSMENT

● Assessing based on your knowledge and understanding of data structures


and algorithms and your problem solving skill set
● Can you implement the most optimized data structure and algorithm for the
question?
● Propose a solution, and an alternative solution and analyze the tradeoffs
○ Can you explain the tradeoffs between the data structure/solution?
○ Can you explain why you choose a data structure for implementation?
○ Can you explain and analyze the time and space complexity correctly?
● Can you translate the algorithm to code well?
3. Good Communication

DO
● You are expected to “Talk and Code”
● Spend time analyzing the problem first, and verbally share your thought process with
the interviewer, explaining your rationale and approach (how and why did you derive
a particular solution)
● Explain your code to the interviewer

DO NOT
● Do not keep silent when thinking to yourself. Interviewers find it hard to assess a
candidate when they do not know what the candidate is thinking about!
● Do not mumble in an interview
4. Attitude

● Collaborative, proactive attitude suggesting your problem solving skills to the


interviewer
● Drive/Lead the technical discussion forward
● Solve the question with close to minimal hints/guidance
● Decision making skill set
○ Are you able to independently derive the solution instead of checking with
the interviewer for advice?
● Integrate any hints/suggestions by the interviewer in your solution
5. Suggested Time Allocation / Framework from Googler (20Min/Question)
● Ideally complete 1 question in 20 minutes
○ 2 mins: Asking Clarifying Questions to gathering all requirements from the
interviewer (Scoping)
○ 8-10 mins: Proposing valid solutions, an alternative approach and discussing
trade offs to get to the most optimized solution. Explain your approach and
rationale of choosing data structure & algorithms. Independently analyze time
and space complexity.
○ 5 mins: Code & Implement a fully working solution. Cover for Edge/Boundary
Cases
○ 5 mins: Dry run (sample Test Cases) along with discussion with the interviewer,
fixing bugs
● Coming up with the working solution first is important! Some candidates spend too
much time on problem solving, and end up having no time to code!
● You can also use brute force & optimize it along the way
Online Assessment
● Clarify
● Plan
● Implement
● Test
● Optimize
Always Start By Asking Clarifying Questions

● Ask 3-4 relevant clarifying questions at the start to reduce the scope of the
problem
● Do not jump in to solve the question before clarifying the requirements!

Examples of the good clarifying questions


○ What is the range of numbers?
○ Are these numbers floating integers or positive numbers?
○ How much memory is there?
○ Are there duplicates in the numbers?
Preparation Plan

● Start your preparation with Steve Yegge’s Blog and go through our website for Interview
Preparation Tips
● These sites are also useful to help you prepare for the technical interviews:
○ Google’s Tech Dev Guide is frequently updated with new problems and resources for
your preparation. You can go straight to the Resource Library for Google Coding
Questions
○ Sites like Leetcode, GeeksforGeeks, Interviewbit, Topcoder, HackerRank,
interviewing.io, Kickstart, Project Euler, Kattis, ACM - ICPC offer coding practice
and problem solving.
■ Time yourself!
● This will help get you into the problem-solving mindset. Practice as much
as you can! - with problems from LeetCode and Geeksforgeeks. For
LeetCode, practice around 150 medium (20-25 mins) or hard (45 mins)
level problems under different categories.
G&L Round

The G&L interview focuses on behavioural and hypothetical questions on


teamwork, leadership, challenging yourself to work outside of your comfort zone.
You can prepare examples from your internship or college life.

Mock Interview

Recommend using this website https://www.pramp.com/ where you will be paired


with an optimal peer (going through their interview process).
How to: Work at Google — Example Coding/Engineering Interview

How to: Prepare for a Google Engineering Interview

Prepare for Your Google Interview: Coding

https://docs.google.com/document/d/11n15922m46evuVBTIdmXeP-0WBRqz1kI9

ofiJ_SL0cQ/edit
ALL THE BEST :)

You might also like