0% found this document useful (0 votes)
27 views11 pages

????????? ?????s (????)

The document provides information about interview processes and tips for Google, Microsoft, Amazon, Oracle, and Facebook interviews. It summarizes the typical steps which include phone screens, online assessments, onsite interviews consisting of coding, design and behavioral questions. It also lists popular interview questions and data structures/algorithms to study for each company. Key steps are recruiter screens, phone/online interviews, onsite loops with coding and other type of questions.

Uploaded by

Kobe
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views11 pages

????????? ?????s (????)

The document provides information about interview processes and tips for Google, Microsoft, Amazon, Oracle, and Facebook interviews. It summarizes the typical steps which include phone screens, online assessments, onsite interviews consisting of coding, design and behavioral questions. It also lists popular interview questions and data structures/algorithms to study for each company. Key steps are recruiter screens, phone/online interviews, onsite loops with coding and other type of questions.

Uploaded by

Kobe
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 11

Google Interview Guide (2022)

---

Interview Process
---
What to expect in a Google interview:

* Recruiter Pre-screen (20-30 mins) – Non-technical chat about your resume and background.
Get ready to answer questions like Why Google? Why are you leaving your current job? What's
your biggest achievement?

* Technical Phone Screens (45-60 mins) – One or two phone screens with your hiring manager
or a Google employee. You'll solve a coding question related to data structures and algorithms
on a shared Google Doc. Some questions on your background.

* Onsite Loop (4-5 interviews) – Coding and System Design questions. Expect questions related
to slightly harder data structure, algorithms, and system design.

Google evaluates candidates on 4 criteria:

1) Googleyness
Googleyness means putting the user first, being friendly, approachable, humble, doing
something nice for others, being proactive, and keeping your eye on the goal. You'll be gauged
for being a team player and having a bias for action.

2) General Cognitive Ability


Your ability to solve problems and explain your thought process. Expect open-ended questions
like how would you optimize this further? The interviewer wants to know how you learn and
adapt to a situation.

3) Leadership
Your ability to take on tough problems and step back when it's not needed. They'll gauge if you
can mobilize a team to solve a difficult problem. Get ready to answer questions like, how have
you demonstrated leadership when you weren't the manager? how have you dealt with trade-
offs and ambiguity?
4) Role-related knowledge
Is your technical expertise sufficient to drive impact at Google? How will you grow and scale
with the company? Sample questions: Tell me about a recent/interesting project you worked
on? How would you design a task scheduling system?

Interview Tips
---
* Data Structures - Practice data structures like Heaps, HashTable, Tree, Stack, Queue, Graph,
and Trie.
* Algorithm - Practice Dynamic Programming, Quick-Sort, Breadth-first and Depth-first search.
* Explain your thought process - Extremely important. Practice describing your design decisions
clearly and concisely.
* Collaborate – Don't forget to discuss tradeoffs, present multiple solutions, and take hints from
the interviewer.

Top recent Google tagged Coding Questions on LeetCode


---
Happy Number (easy)
Minimum Meeting Rooms (medium)
Number of Islands (medium)
Merge Intervals (medium)
Number of Closed Islands (medium)
Making a Large Island (hard)
Employee Free Time (hard)
Alien Dictionary (hard)
𝗠𝗶𝗰𝗿𝗼𝘀𝗼𝗳𝘁 𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗚𝘂𝗶𝗱𝗲 (𝟮𝟬𝟮𝟮)

𝗔𝘃𝗲𝗿𝗮𝗴𝗲 𝘀𝗮𝗹𝗮𝗿𝘆 𝗶𝗻 𝘁𝗵𝗲 𝗨𝗦


SDE (level 59 & 60): 160K-166K
SDE-II (level 61 & 62): 182K-194K
Sr. SDE (level 63 & 64): 224K-254K

𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗣𝗿𝗼𝗰𝗲𝘀𝘀
Here is what to expect in a Microsoft interview for Software Engineers (SDE):

➡ 𝗥𝗲𝗰𝗿𝘂𝗶𝘁𝗲𝗿 𝗣𝗵𝗼𝗻𝗲 𝗦𝗰𝗿𝗲𝗲𝗻 (45 mins) - Initial screening based on resume and
background. Coding questions about data structures and algorithms.
➡ 𝗧𝗲𝗰𝗵𝗻𝗶𝗰𝗮𝗹 𝗣𝗵𝗼𝗻𝗲 𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗼𝗿 𝗢𝗻𝗹𝗶𝗻𝗲 𝗔𝘀𝘀𝗲𝘀𝘀𝗺𝗲𝗻𝘁𝘀 (90 mins) – Algorithm.
You will be asked 2-4 coding questions related to data structures and algorithms to be solved
within 90 mins.
➡𝗢𝗻𝘀𝗶𝘁𝗲 𝗟𝗼𝗼𝗽 (4-5 interviews of one hour each) - Coding, design, and behavioral questions.

● Algorithms - Coding questions solved on a whiteboard.


● Design - Junior engineers will be asked Object Oriented Design questions, whereas senior
engineers will be asked System Design questions.
● Behavioral questions related to your motivation, leadership, challenges, and how you have
been resolving conflicts.

➡ 𝗟𝘂𝗻𝗰𝗵 𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 - You will be taken to lunch halfway through your interviews. You'll be
interviewed during lunch. Expect design or behavioral questions.
➡𝗔𝘀 𝗔𝗽𝗽𝗿𝗼𝗽𝗿𝗶𝗮𝘁𝗲 (As-Ap) – Similar to Amazon's Bar Raiser, 'As-Ap' is a senior leader who
has veto power over your hiring. Together, 'As-Ap' and the hiring manager make the final hiring
decision. Based on your previous interviews, As-Ap can ask coding, design, or behavioral
questions.

𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗧𝗶𝗽𝘀
1) 𝗗𝗮𝘁𝗮 𝗦𝘁𝗿𝘂𝗰𝘁𝘂𝗿𝗲𝘀 - Practice common data structures like Array, String, HashTable, Tree,
LinkedList, Stack, Queue, and Graph.
2) 𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺 - Practice recursion, breadth-first search, depth-first search, divide and
conquer, sorting, and binary tree traversal algorithms.
3) 𝗖𝗼𝗺𝗽𝘂𝘁𝗲𝗿 𝗦𝗰𝗶𝗲𝗻𝗰𝗲 𝗕𝗮𝘀𝗶𝗰𝘀 – Go over CS basics related to OS, Networks, and DBMS.

𝗧𝗼𝗽 𝗿𝗲𝗰𝗲𝗻𝘁 𝗠𝗶𝗰𝗿𝗼𝘀𝗼𝗳𝘁 𝘁𝗮𝗴𝗴𝗲𝗱 𝗖𝗼𝗱𝗶𝗻𝗴 𝗤𝘂𝗲𝘀𝘁𝗶𝗼𝗻𝘀 𝗼𝗻 𝗟𝗲𝗲𝘁𝗖𝗼𝗱𝗲


1. Sign of the Product of an Array (easy)
2. Find N Unique Integers Sum up to Zero (easy)
3. Number of Islands (medium)
4. Boundary of Binary Tree (medium)
5. Longest Happy String (medium)
6. Merge Intervals (medium)
7. Merge 'K' Sorted Lists (medium)
8. Minimum Time to Make Rope Colorful (medium)
9. Course Schedule (medium)
10. Minimum Meeting Rooms (medium)
11. Reverse Nodes in k-Group (hard)
12. Alien Dictionary (hard)

Amazon's Interview Guide (2022)


--------

Here is what to expect in an Amazon interview for a software engineer:

➡ Recruiter Phone Screen - Initial screening based on resume and team fit.

➡ 1-2 Online Assessments – Algorithm and coding questions.

➡ Technical phone interview - You will be interviewed either in person or via telephone with
the hiring manager, who will be your direct manager. You will be asked one or two coding
questions related to data structures and algorithms. Some questions from your resume.

➡Onsite Loop (5-6 interviews) - Algorithm, System Design or Object Orinted Design, Behavioral
questions.
* Algorithms - Coding questions solved on a whiteboard.
* Design - Junior engineers will be asked Object Oriented Design questions, whereas senior
engineers will be asked System Design questions.
* Behavioral questions related to Amazon's leadership principles.
* Bar Raiser Interview- A Bar Raiser is a skilled interviewer who acts as a neutral third party in
the hiring process. Expect coding, design, and behavioral questions related to Amazon's
leadership principles.

Interview Tips
---------------
1) Data Structures - Practice common data structures like Arrays, Strings, HashTables, Trees,
LinkedLists, Stacks, and Queues. Develop an understanding of the inner workings of these data
structures. You will be expected to know the runtimes for common operations and how they
use memory.

2) Algorithm - Practice divide and conquer, breadth-first search vs. depth-first search, and
traversal algorithms.

3) Coding - Candidates are expected to write syntactically correct code.

4) Amazon's Leadership Principles - https://lnkd.in/dQQCk4jU

Top recent Amazon tagged Coding Questions on LeetCode:


--------
1. Biggest Island (easy)
2. 'K' Closest Points to the Origin (easy)
3. Right View of a Binary Tree (easy)
4. Number of Islands (Medium)
5. Merge 'K' Sorted Lists (medium)
6. Tasks Scheduling (medium)
7. Merge Intervals (medium)
8. Zigzag Traversal (medium)
9. Minimum Meeting Rooms (hard)
10. Alien Dictionary (hard)
𝗢𝗿𝗮𝗰𝗹𝗲 𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗚𝘂𝗶𝗱𝗲 (𝟮𝟬𝟮𝟮)
𝗔𝘃𝗲𝗿𝗮𝗴𝗲 𝘀𝗮𝗹𝗮𝗿𝘆 𝗶𝗻 𝘁𝗵𝗲 𝗨𝗦
IC-1 (SDE): 181K
IC-2 (Member of Technical Staff - MTS): 189K
IC-3 (Senior MTS): 214K
IC-4 (Principal MTS): 264K

𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗣𝗿𝗼𝗰𝗲𝘀𝘀
Here is what to expect in Oracle interview for ICs:

➡ Recruiter Pre-screen (30 mins) - Initial screening based on resume. Questions related to your past
experience and accomplishments. No coding.

➡ Online Coding Challenge (60 mins) – You will solve a coding question through HackerRank or an online
code editor.

➡ Onsite Loop (4-5 interviews) - Coding, design, and behavioral questions.


● 𝗖𝗼𝗱𝗶𝗻𝗴 (2 interviews) – 1-2 coding questions solved on a whiteboard in 45 mins.
● 𝗗𝗲𝘀𝗶𝗴𝗻 – Collaborative discussion with the interviewer. Drawing on a whiteboard to solve a
system design question.
● 𝗛𝗶𝗿𝗶𝗻𝗴 𝗠𝗮𝗻𝗮𝗴𝗲𝗿 (behavioral + design) – Deep-dive into your past projects and detailed
discussion on your current work experience. Will include technical design discussion.
● 𝗕𝗮𝗿𝘁𝗲𝗻𝗱𝗲𝗿(𝗕𝗧) 𝗿𝗼𝘂𝗻𝗱: Similar to Amazon's Bar Raiser, an engineer or manager outside of the
team will interview you. Mostly behavioral questions but can include a design question. Questions
about your motivation, people interactions, challenges, and work ethic. Sample questions: Tell me
about a time when you worked with someone whose personality was different from yours. While
working on a team, how did you deal with a conflict?

𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗧𝗶𝗽𝘀
1) Data Structures - Practice data structures like Heaps, HashTable, Tree, LinkedList, Stack, Queue,
and Graph.
2) Algorithm - Practice recursion, Merge-Sort, Quick-Sort, Breadth-first search, Depth-first search,
Divide and Conquer, and Dynamic Programming
3) Collaborate – For design interviews, don't forget to collaborate with the interviewer, present
multiple solutions, and take hints from the discussion.

𝗧𝗼𝗽 𝗢𝗿𝗮𝗰𝗹𝗲 𝗦𝘆𝘀𝘁𝗲𝗺 𝗗𝗲𝘀𝗶𝗴𝗻 𝗤𝘂𝗲𝘀𝘁𝗶𝗼𝗻𝘀


Designing Typeahead Suggestion
Design Distributed Cache
Designing a Web Crawler
Design Instagram
Designing Ride-Hailing Service like Uber

𝗧𝗼𝗽 𝗿𝗲𝗰𝗲𝗻𝘁 𝗢𝗿𝗮𝗰𝗹𝗲 𝘁𝗮𝗴𝗴𝗲𝗱 𝗖𝗼𝗱𝗶𝗻𝗴 𝗤𝘂𝗲𝘀𝘁𝗶𝗼𝗻𝘀 𝗼𝗻 𝗟𝗲𝗲𝘁𝗖𝗼𝗱𝗲


Right View of a Binary Tree (easy)
Number of Distinct Islands (Medium)
Top ‘K’ Frequent Elements (Medium)
Merge Intervals (Medium)
Longest Palindromic Substring (Medium)
Number of Islands (Medium)
Generate Parentheses (Medium)
Minimum Meeting Rooms (hard)
Employee Free Time (hard)
Substring with Concatenation of All Words (Hard)
Facebook Interview Guide (2022)
----

Average salary in the US


----
SDE (E3): 186K
SDE (E4): 267K
Sr. SDE (E5): 385K

Interview Process
----
Here is what to expect in a Facebook interview for software engineers:

◈ Recruiter Pre-screen (20-30 mins) - Initial screening based on resume. Questions related to
your professional experience, noteworthy projects, and accomplishments. No coding.

◈ Technical Phone Interview (45-60 mins) – You will solve a coding question using an online
editor. Your interviewer might ask you a follow-up question or add constraints to the current
problem. Common topics include data structures, algorithms, and time/space complexity.

◈ Onsite Loop (4-5 interviews) - Coding, design, and behavioral questions.


➡ Ninja (coding, 2 interviews) – 1-2 coding questions solved on a whiteboard in 45 mins.
➡ Pirate (design, 2 interviews) – Collaborative discussion with the interviewer. Drawing on a
whiteboard to solve a system design question. Junior engineers don't get any design interviews.
➡ Jedi (behavioral) Questions about your motivation, people interactions, challenges, and
work ethics.

◈ Lunch - It's not an interview. The interviewer will show you around and have lunch with you.

Interview Tips
----

1) Data Structures - Practice data structures like Heaps, HashTable, Tree, LinkedList, Stack,
Queue, and Graph.
2) Algorithm - Practice recursion, Merge-Sort, Quick-Sort, Breadth-first search, Depth-first
search, Divide and Conquer, and Dynamic Programming
3) Explain your thought process - Extremely important. Practice describing your solution and
design decisions clearly and concisely.
4) Collaborate – Don't forget to discuss, present multiple solutions, and take hints from the
interviewer.
System Design Interviews: A step-by-step guide

System Design Interview is unstructured in which people are asked to answer open-ended
design questions.

What could be a good strategy to answer a system design question? Follow these seven steps:

➡ Step 1: Requirements clarifications


1) Make sure you know the exact scope of the system by asking questions.
2) Start the interview by asking a few questions.
3) Not all things can be clarified at the beginning; keep asking clarifying questions throughout
the interview.

➡ Step 2: Back-of-the-envelope Estimation


1) Establish a reasonable estimate of the size of the system you wish to design.
2) Try estimating the resources (storage, CPU, memory, network, etc.) required to build the
system.
3) Later, this will help when you focus on scaling, partitioning, load balancing, caching, etc.

➡ Step 3: System Interface Definition


1) Describe the interfaces of the system.
2) Define what APIs are expected from the system.
3) This will not only establish the exact contract expected from the system but also ensure that
you have not gotten any requirements wrong.

➡ Step 4: Define Data Model


1) Define the data model, what tables the system will have and what fields each table will
contain.
2) Defining the data model will also clarify how data will flow between different components.
3) Later, this will guide the partitioning and management of data.

➡ Step 5: High-level Design


1) Draw a block diagram with 5–6 boxes representing the core components of your system.
2) Identify enough components that are needed to solve the design problem from end to end.

➡ Step 6: Detailed Design


1) Dig deeper into 2–3 major components.
2) Interviewer’s feedback should always guide you towards which parts of the system you
should explain further.
3) Describe various options, their pros and cons, and why you chose one over the other.

➡ Step 7: Identifying and Resolving Bottlenecks


1) Identify and discuss as many bottlenecks as possible.
2) A few examples of bottlenecks are the single point of failure, network transfer rate, I/O rate,
CPU and memory limits, etc.
3) Describe different ways to mitigate the bottlenecks.

You might also like