SlideShare a Scribd company logo
 
Google Interview Prep Guide
Software Engineer
What’s a Software Engineer (SWE)?
Software Engineers (referred to as “SWEs”) at Google develop the next-generation technologies that change
how millions of users connect, explore and interact with information and one another. As a SWE, you’ll be
responsible for the whole lifecycle of a project critical to Google’s needs, with opportunities to switch teams
and projects as you and our fast-paced business grow and evolve. Depending upon the project you join, you
could be involved in research, design, planning, architecture, development, test, implementation and release
phases. You'll be working on products that handle information at a massive scale, bringing fresh ideas from
all areas and tackling new problems across the full-stack as we continue to push technology forward.
Why Google? Impact.
Google is and always will be an engineering company. We hire people with a broad set of technical skills
who are ready to tackle some of technology's greatest challenges and make an impact on millions, if not
billions, of users. At Google, engineers not only revolutionize search, they routinely work on massive
scalability and storage solutions, large-scale applications and develop entirely new platforms around the
world. From AdWords to Chrome, Android to YouTube, Cloud to Maps, Google engineers are changing the
world one technological achievement after another.
 
 
General Interview Tips
Explain: ​We want to understand how you think, so explain your thought process and decision making
throughout the interview. Remember we’re not only evaluating your technical ability, but also how you
approach problems and try to solve them. Explicitly state and check assumptions with your interviewer to
ensure they are reasonable.
Clarify: ​Many of the questions will be deliberately open-ended to provide insight into what categories and
information you value within the technological puzzle. We’re looking to see how you engage with the
problem and your primary method for solving it. Be sure to talk through your thought process and feel free to
ask specific questions if you need clarification.
Improve: ​Think about ways to improve the solution you present.It’s worthwhile to think out loud about your
initial thoughts to a question. In many cases, your first answer may need some refining and further
explanation. ​If necessary, start with the brute force solution and improve on it — just let the interviewer know
that's what you're doing and why.
Practice: ​You won’t have access to an IDE or compiler during the interview so practice writing code on paper
or a whiteboard. Be sure to test your code and ensure it’s easily readable without bugs. Don’t stress about
small syntactical errors like which substring to use for a given method (e.g. start, end or start, length) — just
pick one and let your interviewer know.
The Technical Phone Interviews
Your phone interview will cover data structures and algorithms. Be prepared to write around 20-30 lines of
code in your strongest language. Approach all scripting as a coding exercise — this should be clean, rich,
robust code.
1. You will be asked an open ended question. Ask clarifying questions, devise requirements.
2. You will be asked to explain it in an algorithm.
3. Convert it to a workable code.(Hint: Don't worry about getting it perfect because time is limited.
Write what comes but then refine it later. Also make sure you consider corner cases and edge
cases, production ready.)
4. Optimize the code, follow it with test cases and find any bugs.
google.com/​careers 
 
The Coding & Algorithm Interviews
Coding: You should know at least one programming language really well, preferably C++, Java, Python, Go,
or C. You will be expected to know APIs, Object Orientated Design and Programming, how to test your code,
as well as come up with corner cases and edge cases for code. Note that we focus on conceptual
understanding rather than memorization.
Algorithms: ​Approach the problem with both bottom-up and top-down algorithms. You will be expected to
know the complexity of an algorithm and how you can improve/change it. Algorithms that are used to solve
Google problems include sorting (plus searching and binary search), divide-and-conquer, dynamic
programming/memoization, greediness, recursion or algorithms linked to a specific data structure. Know
Big-O notations (e.g. run time) and be ready to discuss complex algorithms like Dijkstra and A*. We
recommend discussing or outlining the algorithm you have in mind before writing code.
Sorting: ​Be familiar with common sorting functions and on what kind of input data they efficient or not.
Think about efficiency means in terms of runtime and space used. For example, in exceptional cases
insertion-sort or radix-sort are much better than the generic QuickSort/MergeSort/HeapSort answers.
Data Structures: ​You should study up on as many data structures as possible. Data structures most
frequently used are arrays, linked lists, stacks, queues, hash-sets, hash-maps, hash-tables, dictionary, trees
and binary trees, heaps and graphs. You should know the data structure inside out, and what algorithms
tend to go along with each data structure.
Mathematics: ​Some interviewers ask basic discrete math questions. This is more prevalent at Google than
at other companies because counting problems, probability problems and other Discrete Math 101
situations surround us. Spend some time before the interview refreshing your memory on (or teaching
yourself) the essentials of elementary probability theory and combinatorics. You should be familiar with
n-choose-k problems and their ilk.
Graphs: Consider if a problem can be applied with graph algorithms like distance, search, connectivity,
cycle-detection, etc. There are three basic ways to represent a graph in memory (objects and pointers,
matrix, and adjacency list) — familiarize yourself with each representation and its pros and cons. You should
know the basic graph traversal algorithms, breadth-first search and depth-first search. Know their
computational complexity, their tradeoffs and how to implement them in real code.
Recursion: ​Many coding problems involve thinking recursively and potentially coding a recursive solution.
Use recursion to find more elegant solutions to problems that can be solved iteratively.
google.com/​careers 
 
The System Design Interviews
Operating Systems: You should understand processes, threads, concurrency issues, locks, mutexes,
semaphores, monitors and how they all work. Understand deadlock, livelock and how to avoid them. Know
what resources a process needs and a thread needs. Understand how context switching works, how it's
initiated by the operating system and underlying hardware. Know a little about scheduling. We are rapidly
moving towards multi-core, so know the fundamentals of "modern" concurrency constructs.
System Design: System design questions are used to assess a candidate's ability to combine knowledge,
theory, experience and judgement toward solving a real-world engineering problem. Sample topics include
features sets, interfaces, class hierarchies, distributed systems, designing a system under certain
constraints, simplicity, limitations, robustness and tradeoffs. You should also have an understanding of how
the internet actually works and be familiar with the various pieces (routers, domain name servers, load
balancers, firewalls, etc.). For information on system design, check out our ​research on distributed systems
and parallel computing.
Resources
Books
Cracking the Coding Interview
Gayle Laakmann McDowell 
Programming Interviews Exposed: Secrets to Landing Your Next Job
John Mongan, Eric Giguere, Noah Suojanen, Noah Kindler
Programming Pearls
Jon Bentley
Introduction to Algorithms
Thomas Cormen, Charles Leiserson, Ronald Rivest, Clifford Stein
Interview Prep
How we hire
Interviewing @ Google 
Candidate Coaching Session:Tech Interviewing 
CodeJam: Practice & Learn
Technical Development Guide
About Google
Company - Google
The Google story
Life @ Google
Google Developers
Open Source Projects
Github: Google Style Guide 
 
Google Publications
The Google File System
Bigtable
MapReduce
Google Spanner
Google Chubby
google.com/​careers 

More Related Content

What's hot

Quarterly Planning Deck
Quarterly Planning DeckQuarterly Planning Deck
Quarterly Planning Deck
jessicawishart
 
Holland & Barrett: Gen AI Prompt Engineering for Tech teams
Holland & Barrett: Gen AI Prompt Engineering for Tech teamsHolland & Barrett: Gen AI Prompt Engineering for Tech teams
Holland & Barrett: Gen AI Prompt Engineering for Tech teams
Dobo Radichkov
 
Odoo erp or sap erp
Odoo erp or sap erpOdoo erp or sap erp
Odoo erp or sap erp
Cybrosys Technology
 
Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...
Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...
Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...
VMware Tanzu
 
Design Thinking@saurabhgupta218
Design Thinking@saurabhgupta218Design Thinking@saurabhgupta218
Design Thinking@saurabhgupta218
Saurabh Gupta
 
Kanban
KanbanKanban
Kanban
bramoe
 
Lean Product Discovery
Lean Product DiscoveryLean Product Discovery
Lean Product Discovery
David Hawks
 
Agile Data Science
Agile Data ScienceAgile Data Science
Agile Data Science
Volodymyr Kazantsev
 
Effective requirement gathering using Design Thinking technique
Effective requirement gathering using Design Thinking techniqueEffective requirement gathering using Design Thinking technique
Effective requirement gathering using Design Thinking technique
Agile Chandigarh
 
From Product Vision to Story Map - Lean / Agile Product shaping
From Product Vision to Story Map - Lean / Agile Product shapingFrom Product Vision to Story Map - Lean / Agile Product shaping
From Product Vision to Story Map - Lean / Agile Product shaping
Jérôme Kehrli
 
HITD 201: Design Thinking - Lecture 2; Empathy and Understanding Users
HITD 201: Design Thinking - Lecture 2; Empathy and Understanding UsersHITD 201: Design Thinking - Lecture 2; Empathy and Understanding Users
HITD 201: Design Thinking - Lecture 2; Empathy and Understanding Users
Mark Billinghurst
 
ChatGPT_Cheatsheet_Costa.pdf
ChatGPT_Cheatsheet_Costa.pdfChatGPT_Cheatsheet_Costa.pdf
ChatGPT_Cheatsheet_Costa.pdf
ssuser3e5d3a
 
Agile Product Development Workshop
Agile Product Development WorkshopAgile Product Development Workshop
Agile Product Development Workshop
Sean Ammirati
 
Introduction to Extreme Programming
Introduction to Extreme ProgrammingIntroduction to Extreme Programming
Introduction to Extreme Programming
Naresh Jain
 
Agile Product Roadmaps
Agile Product RoadmapsAgile Product Roadmaps
Agile Product Roadmaps
Roman Pichler
 
Large scale agile frameworks
Large scale agile frameworksLarge scale agile frameworks
Large scale agile frameworks
Siddhi Thakkar
 
Intro to design sprint
Intro to design sprintIntro to design sprint
Intro to design sprint
Angelene Jessy
 
User Story Sizing using Agile Relative Estimation
User Story Sizing using Agile Relative EstimationUser Story Sizing using Agile Relative Estimation
User Story Sizing using Agile Relative Estimation
Alex Kanaan, SPC5, CSP, ACC, ATF
 
Top 10 Agile Metrics
Top 10 Agile MetricsTop 10 Agile Metrics
Top 10 Agile Metrics
XBOSoft
 

What's hot (20)

Quarterly Planning Deck
Quarterly Planning DeckQuarterly Planning Deck
Quarterly Planning Deck
 
Holland & Barrett: Gen AI Prompt Engineering for Tech teams
Holland & Barrett: Gen AI Prompt Engineering for Tech teamsHolland & Barrett: Gen AI Prompt Engineering for Tech teams
Holland & Barrett: Gen AI Prompt Engineering for Tech teams
 
Odoo erp or sap erp
Odoo erp or sap erpOdoo erp or sap erp
Odoo erp or sap erp
 
Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...
Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...
Matthew Skelton_What is Platform as a Product_ Clues from Team Topologies - D...
 
Design Thinking@saurabhgupta218
Design Thinking@saurabhgupta218Design Thinking@saurabhgupta218
Design Thinking@saurabhgupta218
 
Kanban
KanbanKanban
Kanban
 
Lean Product Discovery
Lean Product DiscoveryLean Product Discovery
Lean Product Discovery
 
Agile Data Science
Agile Data ScienceAgile Data Science
Agile Data Science
 
Effective requirement gathering using Design Thinking technique
Effective requirement gathering using Design Thinking techniqueEffective requirement gathering using Design Thinking technique
Effective requirement gathering using Design Thinking technique
 
From Product Vision to Story Map - Lean / Agile Product shaping
From Product Vision to Story Map - Lean / Agile Product shapingFrom Product Vision to Story Map - Lean / Agile Product shaping
From Product Vision to Story Map - Lean / Agile Product shaping
 
Spa2010 uSwitch
Spa2010 uSwitchSpa2010 uSwitch
Spa2010 uSwitch
 
HITD 201: Design Thinking - Lecture 2; Empathy and Understanding Users
HITD 201: Design Thinking - Lecture 2; Empathy and Understanding UsersHITD 201: Design Thinking - Lecture 2; Empathy and Understanding Users
HITD 201: Design Thinking - Lecture 2; Empathy and Understanding Users
 
ChatGPT_Cheatsheet_Costa.pdf
ChatGPT_Cheatsheet_Costa.pdfChatGPT_Cheatsheet_Costa.pdf
ChatGPT_Cheatsheet_Costa.pdf
 
Agile Product Development Workshop
Agile Product Development WorkshopAgile Product Development Workshop
Agile Product Development Workshop
 
Introduction to Extreme Programming
Introduction to Extreme ProgrammingIntroduction to Extreme Programming
Introduction to Extreme Programming
 
Agile Product Roadmaps
Agile Product RoadmapsAgile Product Roadmaps
Agile Product Roadmaps
 
Large scale agile frameworks
Large scale agile frameworksLarge scale agile frameworks
Large scale agile frameworks
 
Intro to design sprint
Intro to design sprintIntro to design sprint
Intro to design sprint
 
User Story Sizing using Agile Relative Estimation
User Story Sizing using Agile Relative EstimationUser Story Sizing using Agile Relative Estimation
User Story Sizing using Agile Relative Estimation
 
Top 10 Agile Metrics
Top 10 Agile MetricsTop 10 Agile Metrics
Top 10 Agile Metrics
 

Similar to Google Interview Prep Guide Software Engineer

Interview Preparation guide for DSA.pptx
Interview Preparation guide for DSA.pptxInterview Preparation guide for DSA.pptx
Interview Preparation guide for DSA.pptx
Tutort Academy
 
Top 10 Interview Questions for Coding Job.docx
Top 10 Interview Questions for Coding Job.docxTop 10 Interview Questions for Coding Job.docx
Top 10 Interview Questions for Coding Job.docx
Surendra Gusain
 
Top 10 Interview Questions for Coding Job.docx
Top 10 Interview Questions for Coding Job.docxTop 10 Interview Questions for Coding Job.docx
Top 10 Interview Questions for Coding Job.docx
Surendra Gusain
 
Google interview questions
Google interview questionsGoogle interview questions
Google interview questions
Sumit Arora
 
Greythorn Whiteboard Interview Guide
Greythorn Whiteboard Interview GuideGreythorn Whiteboard Interview Guide
Greythorn Whiteboard Interview Guide
Vaco Seattle
 
Software engineering
Software engineeringSoftware engineering
Software engineering
sweetysweety8
 
Cloudera Data Science Challenge 3 Solution by Doug Needham
Cloudera Data Science Challenge 3 Solution by Doug NeedhamCloudera Data Science Challenge 3 Solution by Doug Needham
Cloudera Data Science Challenge 3 Solution by Doug Needham
Doug Needham
 
Brochure curriculum (1)
Brochure curriculum (1)Brochure curriculum (1)
Brochure curriculum (1)
Manuel E. Cotallo Torres
 
Applying AI to software engineering problems: Do not forget the human!
Applying AI to software engineering problems: Do not forget the human!Applying AI to software engineering problems: Do not forget the human!
Applying AI to software engineering problems: Do not forget the human!
University of Córdoba
 
The I in PRIMM - Code Comprehension and Questioning
The I in PRIMM - Code Comprehension and QuestioningThe I in PRIMM - Code Comprehension and Questioning
The I in PRIMM - Code Comprehension and Questioning
Sue Sentance
 
Microsoft interview questions Microsoft sde sdet jobs Microsoft Careers
Microsoft interview questions Microsoft sde sdet jobs Microsoft CareersMicrosoft interview questions Microsoft sde sdet jobs Microsoft Careers
Microsoft interview questions Microsoft sde sdet jobs Microsoft Careers
Sumit Arora
 
Salesforce Architect Group, Frederick, United States July 2023 - Generative A...
Salesforce Architect Group, Frederick, United States July 2023 - Generative A...Salesforce Architect Group, Frederick, United States July 2023 - Generative A...
Salesforce Architect Group, Frederick, United States July 2023 - Generative A...
NadinaLisbon1
 
Mastering Data Engineering: Common Data Engineer Interview Questions You Shou...
Mastering Data Engineering: Common Data Engineer Interview Questions You Shou...Mastering Data Engineering: Common Data Engineer Interview Questions You Shou...
Mastering Data Engineering: Common Data Engineer Interview Questions You Shou...
FredReynolds2
 
A Pragmatic Approach
A Pragmatic ApproachA Pragmatic Approach
A Pragmatic Approach
HakanCanpek
 
Barga Data Science lecture 2
Barga Data Science lecture 2Barga Data Science lecture 2
Barga Data Science lecture 2
Roger Barga
 
Machine Learning
Machine LearningMachine Learning
Machine Learning
Ramiro Aduviri Velasco
 
Software Development in the Brave New world
Software Development in the Brave New worldSoftware Development in the Brave New world
Software Development in the Brave New world
David Leip
 
251 - Alogarithms Lects.pdf
251 - Alogarithms Lects.pdf251 - Alogarithms Lects.pdf
251 - Alogarithms Lects.pdf
Abdulkadir Jibril
 
Software Architecture: How Much Design?
Software Architecture: How Much Design?Software Architecture: How Much Design?
Software Architecture: How Much Design?
Òscar Vilaplana
 

Similar to Google Interview Prep Guide Software Engineer (20)

Interview Preparation guide for DSA.pptx
Interview Preparation guide for DSA.pptxInterview Preparation guide for DSA.pptx
Interview Preparation guide for DSA.pptx
 
Top 10 Interview Questions for Coding Job.docx
Top 10 Interview Questions for Coding Job.docxTop 10 Interview Questions for Coding Job.docx
Top 10 Interview Questions for Coding Job.docx
 
Top 10 Interview Questions for Coding Job.docx
Top 10 Interview Questions for Coding Job.docxTop 10 Interview Questions for Coding Job.docx
Top 10 Interview Questions for Coding Job.docx
 
Google interview questions
Google interview questionsGoogle interview questions
Google interview questions
 
Greythorn Whiteboard Interview Guide
Greythorn Whiteboard Interview GuideGreythorn Whiteboard Interview Guide
Greythorn Whiteboard Interview Guide
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
Cloudera Data Science Challenge 3 Solution by Doug Needham
Cloudera Data Science Challenge 3 Solution by Doug NeedhamCloudera Data Science Challenge 3 Solution by Doug Needham
Cloudera Data Science Challenge 3 Solution by Doug Needham
 
Brochure curriculum (1)
Brochure curriculum (1)Brochure curriculum (1)
Brochure curriculum (1)
 
Applying AI to software engineering problems: Do not forget the human!
Applying AI to software engineering problems: Do not forget the human!Applying AI to software engineering problems: Do not forget the human!
Applying AI to software engineering problems: Do not forget the human!
 
The I in PRIMM - Code Comprehension and Questioning
The I in PRIMM - Code Comprehension and QuestioningThe I in PRIMM - Code Comprehension and Questioning
The I in PRIMM - Code Comprehension and Questioning
 
Microsoft interview questions Microsoft sde sdet jobs Microsoft Careers
Microsoft interview questions Microsoft sde sdet jobs Microsoft CareersMicrosoft interview questions Microsoft sde sdet jobs Microsoft Careers
Microsoft interview questions Microsoft sde sdet jobs Microsoft Careers
 
Salesforce Architect Group, Frederick, United States July 2023 - Generative A...
Salesforce Architect Group, Frederick, United States July 2023 - Generative A...Salesforce Architect Group, Frederick, United States July 2023 - Generative A...
Salesforce Architect Group, Frederick, United States July 2023 - Generative A...
 
Mastering Data Engineering: Common Data Engineer Interview Questions You Shou...
Mastering Data Engineering: Common Data Engineer Interview Questions You Shou...Mastering Data Engineering: Common Data Engineer Interview Questions You Shou...
Mastering Data Engineering: Common Data Engineer Interview Questions You Shou...
 
A Pragmatic Approach
A Pragmatic ApproachA Pragmatic Approach
A Pragmatic Approach
 
Barga Data Science lecture 2
Barga Data Science lecture 2Barga Data Science lecture 2
Barga Data Science lecture 2
 
Machine Learning
Machine LearningMachine Learning
Machine Learning
 
Software Development in the Brave New world
Software Development in the Brave New worldSoftware Development in the Brave New world
Software Development in the Brave New world
 
3685807
36858073685807
3685807
 
251 - Alogarithms Lects.pdf
251 - Alogarithms Lects.pdf251 - Alogarithms Lects.pdf
251 - Alogarithms Lects.pdf
 
Software Architecture: How Much Design?
Software Architecture: How Much Design?Software Architecture: How Much Design?
Software Architecture: How Much Design?
 

More from Lewis Lin 🦊

Gaskins' memo pitching PowerPoint
Gaskins' memo pitching PowerPointGaskins' memo pitching PowerPoint
Gaskins' memo pitching PowerPoint
Lewis Lin 🦊
 
P&G Memo: Creating Modern Day Brand Management
P&G Memo: Creating Modern Day Brand ManagementP&G Memo: Creating Modern Day Brand Management
P&G Memo: Creating Modern Day Brand Management
Lewis Lin 🦊
 
Jeffrey Katzenberg on Disney Studios
Jeffrey Katzenberg on Disney StudiosJeffrey Katzenberg on Disney Studios
Jeffrey Katzenberg on Disney Studios
Lewis Lin 🦊
 
Carnegie Mellon MS PM Internships 2020
Carnegie Mellon MS PM Internships 2020Carnegie Mellon MS PM Internships 2020
Carnegie Mellon MS PM Internships 2020
Lewis Lin 🦊
 
Gallup's Notes on Reinventing Performance Management
Gallup's Notes on Reinventing Performance ManagementGallup's Notes on Reinventing Performance Management
Gallup's Notes on Reinventing Performance Management
Lewis Lin 🦊
 
Twitter Job Opportunities for Students
Twitter Job Opportunities for StudentsTwitter Job Opportunities for Students
Twitter Job Opportunities for Students
Lewis Lin 🦊
 
Facebook's Official Guide to Technical Program Management Candidates
Facebook's Official Guide to Technical Program Management CandidatesFacebook's Official Guide to Technical Program Management Candidates
Facebook's Official Guide to Technical Program Management Candidates
Lewis Lin 🦊
 
Performance Management at Google
Performance Management at GooglePerformance Management at Google
Performance Management at Google
Lewis Lin 🦊
 
Skills Assessment Offering by Lewis C. Lin
Skills Assessment Offering by Lewis C. LinSkills Assessment Offering by Lewis C. Lin
Skills Assessment Offering by Lewis C. Lin
Lewis Lin 🦊
 
How Men and Women Differ Across Leadership Traits
How Men and Women Differ Across Leadership TraitsHow Men and Women Differ Across Leadership Traits
How Men and Women Differ Across Leadership Traits
Lewis Lin 🦊
 
Product Manager Skills Survey
Product Manager Skills SurveyProduct Manager Skills Survey
Product Manager Skills Survey
Lewis Lin 🦊
 
Uxpin Why Build a Design System
Uxpin Why Build a Design SystemUxpin Why Build a Design System
Uxpin Why Build a Design System
Lewis Lin 🦊
 
Sourcing on GitHub
Sourcing on GitHubSourcing on GitHub
Sourcing on GitHub
Lewis Lin 🦊
 
30-Day Facebook PM Interview Study Guide
30-Day Facebook PM Interview Study Guide30-Day Facebook PM Interview Study Guide
30-Day Facebook PM Interview Study Guide
Lewis Lin 🦊
 
36-Day Amazon PM Interview Study Guide
36-Day Amazon PM Interview Study Guide36-Day Amazon PM Interview Study Guide
36-Day Amazon PM Interview Study Guide
Lewis Lin 🦊
 
McKinsey's Assessment on PM Careers
McKinsey's Assessment on PM CareersMcKinsey's Assessment on PM Careers
McKinsey's Assessment on PM Careers
Lewis Lin 🦊
 
Five Traits of Great Product Managers
Five Traits of Great Product ManagersFive Traits of Great Product Managers
Five Traits of Great Product Managers
Lewis Lin 🦊
 
Margin Analysis Example
Margin Analysis ExampleMargin Analysis Example
Margin Analysis Example
Lewis Lin 🦊
 
Facebook's Official Guide to Product Management Candidates
Facebook's Official Guide to Product Management CandidatesFacebook's Official Guide to Product Management Candidates
Facebook's Official Guide to Product Management Candidates
Lewis Lin 🦊
 
Web Design Trends 2017
Web Design Trends 2017Web Design Trends 2017
Web Design Trends 2017
Lewis Lin 🦊
 

More from Lewis Lin 🦊 (20)

Gaskins' memo pitching PowerPoint
Gaskins' memo pitching PowerPointGaskins' memo pitching PowerPoint
Gaskins' memo pitching PowerPoint
 
P&G Memo: Creating Modern Day Brand Management
P&G Memo: Creating Modern Day Brand ManagementP&G Memo: Creating Modern Day Brand Management
P&G Memo: Creating Modern Day Brand Management
 
Jeffrey Katzenberg on Disney Studios
Jeffrey Katzenberg on Disney StudiosJeffrey Katzenberg on Disney Studios
Jeffrey Katzenberg on Disney Studios
 
Carnegie Mellon MS PM Internships 2020
Carnegie Mellon MS PM Internships 2020Carnegie Mellon MS PM Internships 2020
Carnegie Mellon MS PM Internships 2020
 
Gallup's Notes on Reinventing Performance Management
Gallup's Notes on Reinventing Performance ManagementGallup's Notes on Reinventing Performance Management
Gallup's Notes on Reinventing Performance Management
 
Twitter Job Opportunities for Students
Twitter Job Opportunities for StudentsTwitter Job Opportunities for Students
Twitter Job Opportunities for Students
 
Facebook's Official Guide to Technical Program Management Candidates
Facebook's Official Guide to Technical Program Management CandidatesFacebook's Official Guide to Technical Program Management Candidates
Facebook's Official Guide to Technical Program Management Candidates
 
Performance Management at Google
Performance Management at GooglePerformance Management at Google
Performance Management at Google
 
Skills Assessment Offering by Lewis C. Lin
Skills Assessment Offering by Lewis C. LinSkills Assessment Offering by Lewis C. Lin
Skills Assessment Offering by Lewis C. Lin
 
How Men and Women Differ Across Leadership Traits
How Men and Women Differ Across Leadership TraitsHow Men and Women Differ Across Leadership Traits
How Men and Women Differ Across Leadership Traits
 
Product Manager Skills Survey
Product Manager Skills SurveyProduct Manager Skills Survey
Product Manager Skills Survey
 
Uxpin Why Build a Design System
Uxpin Why Build a Design SystemUxpin Why Build a Design System
Uxpin Why Build a Design System
 
Sourcing on GitHub
Sourcing on GitHubSourcing on GitHub
Sourcing on GitHub
 
30-Day Facebook PM Interview Study Guide
30-Day Facebook PM Interview Study Guide30-Day Facebook PM Interview Study Guide
30-Day Facebook PM Interview Study Guide
 
36-Day Amazon PM Interview Study Guide
36-Day Amazon PM Interview Study Guide36-Day Amazon PM Interview Study Guide
36-Day Amazon PM Interview Study Guide
 
McKinsey's Assessment on PM Careers
McKinsey's Assessment on PM CareersMcKinsey's Assessment on PM Careers
McKinsey's Assessment on PM Careers
 
Five Traits of Great Product Managers
Five Traits of Great Product ManagersFive Traits of Great Product Managers
Five Traits of Great Product Managers
 
Margin Analysis Example
Margin Analysis ExampleMargin Analysis Example
Margin Analysis Example
 
Facebook's Official Guide to Product Management Candidates
Facebook's Official Guide to Product Management CandidatesFacebook's Official Guide to Product Management Candidates
Facebook's Official Guide to Product Management Candidates
 
Web Design Trends 2017
Web Design Trends 2017Web Design Trends 2017
Web Design Trends 2017
 

Recently uploaded

Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...
Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...
Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...
Dirk Spencer Corporate Recruiter LION
 
How Mentoring Elevates Your PM Career | PMI Silver Spring Chapter
How Mentoring Elevates Your PM Career | PMI Silver Spring ChapterHow Mentoring Elevates Your PM Career | PMI Silver Spring Chapter
How Mentoring Elevates Your PM Career | PMI Silver Spring Chapter
Hector Del Castillo, CPM, CPMM
 
Operating system. short answes and Interview questions .pdf
Operating system. short answes and Interview questions .pdfOperating system. short answes and Interview questions .pdf
Operating system. short answes and Interview questions .pdf
harikrishnahari6276
 
The Impact of Artificial Intelligence on Modern Society.pdf
The Impact of Artificial Intelligence on Modern Society.pdfThe Impact of Artificial Intelligence on Modern Society.pdf
The Impact of Artificial Intelligence on Modern Society.pdf
ssuser3e63fc
 
Full Sail_Morales_Michael_SMM_2024-05.pptx
Full Sail_Morales_Michael_SMM_2024-05.pptxFull Sail_Morales_Michael_SMM_2024-05.pptx
Full Sail_Morales_Michael_SMM_2024-05.pptx
mmorales2173
 
135. Reviewer Certificate in Journal of Engineering
135. Reviewer Certificate in Journal of Engineering135. Reviewer Certificate in Journal of Engineering
135. Reviewer Certificate in Journal of Engineering
Manu Mitra
 
一比一原版(TMU毕业证)多伦多都会大学毕业证如何办理
一比一原版(TMU毕业证)多伦多都会大学毕业证如何办理一比一原版(TMU毕业证)多伦多都会大学毕业证如何办理
一比一原版(TMU毕业证)多伦多都会大学毕业证如何办理
yuhofha
 
欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】
欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】
欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】
foismail170
 
太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】
太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】
太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】
foismail170
 
How to create an effective K-POC tutorial
How to create an effective K-POC tutorialHow to create an effective K-POC tutorial
How to create an effective K-POC tutorial
vencislavkaaa
 
一比一原版(UVic毕业证)维多利亚大学毕业证如何办理
一比一原版(UVic毕业证)维多利亚大学毕业证如何办理一比一原版(UVic毕业证)维多利亚大学毕业证如何办理
一比一原版(UVic毕业证)维多利亚大学毕业证如何办理
pxyhy
 
Personal Brand exploration KE.pdf for assignment
Personal Brand exploration KE.pdf for assignmentPersonal Brand exploration KE.pdf for assignment
Personal Brand exploration KE.pdf for assignment
ragingokie
 
Exploring Career Paths in Cybersecurity for Technical Communicators
Exploring Career Paths in Cybersecurity for Technical CommunicatorsExploring Career Paths in Cybersecurity for Technical Communicators
Exploring Career Paths in Cybersecurity for Technical Communicators
Ben Woelk, CISSP, CPTC
 
han han widi kembar tapi beda han han dan widi kembar tapi sama
han han widi kembar tapi beda han han dan widi kembar tapi samahan han widi kembar tapi beda han han dan widi kembar tapi sama
han han widi kembar tapi beda han han dan widi kembar tapi sama
IrlanMalik
 
RECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdf
RECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdfRECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdf
RECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdf
AlessandroMartins454470
 
一比一原版(YU毕业证)约克大学毕业证如何办理
一比一原版(YU毕业证)约克大学毕业证如何办理一比一原版(YU毕业证)约克大学毕业证如何办理
一比一原版(YU毕业证)约克大学毕业证如何办理
yuhofha
 
Chapters 3 Contracts.pptx Chapters 3 Contracts.pptx
Chapters 3  Contracts.pptx Chapters 3  Contracts.pptxChapters 3  Contracts.pptx Chapters 3  Contracts.pptx
Chapters 3 Contracts.pptx Chapters 3 Contracts.pptx
Sheldon Byron
 
New Explore Careers and College Majors 2024.pdf
New Explore Careers and College Majors 2024.pdfNew Explore Careers and College Majors 2024.pdf
New Explore Careers and College Majors 2024.pdf
Dr. Mary Askew
 
Brand Identity For A Sportscaster Project and Portfolio I
Brand Identity For A Sportscaster Project and Portfolio IBrand Identity For A Sportscaster Project and Portfolio I
Brand Identity For A Sportscaster Project and Portfolio I
thomasaolson2000
 
DOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdf
DOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdfDOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdf
DOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdf
Pushpendra Kumar
 

Recently uploaded (20)

Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...
Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...
Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...
 
How Mentoring Elevates Your PM Career | PMI Silver Spring Chapter
How Mentoring Elevates Your PM Career | PMI Silver Spring ChapterHow Mentoring Elevates Your PM Career | PMI Silver Spring Chapter
How Mentoring Elevates Your PM Career | PMI Silver Spring Chapter
 
Operating system. short answes and Interview questions .pdf
Operating system. short answes and Interview questions .pdfOperating system. short answes and Interview questions .pdf
Operating system. short answes and Interview questions .pdf
 
The Impact of Artificial Intelligence on Modern Society.pdf
The Impact of Artificial Intelligence on Modern Society.pdfThe Impact of Artificial Intelligence on Modern Society.pdf
The Impact of Artificial Intelligence on Modern Society.pdf
 
Full Sail_Morales_Michael_SMM_2024-05.pptx
Full Sail_Morales_Michael_SMM_2024-05.pptxFull Sail_Morales_Michael_SMM_2024-05.pptx
Full Sail_Morales_Michael_SMM_2024-05.pptx
 
135. Reviewer Certificate in Journal of Engineering
135. Reviewer Certificate in Journal of Engineering135. Reviewer Certificate in Journal of Engineering
135. Reviewer Certificate in Journal of Engineering
 
一比一原版(TMU毕业证)多伦多都会大学毕业证如何办理
一比一原版(TMU毕业证)多伦多都会大学毕业证如何办理一比一原版(TMU毕业证)多伦多都会大学毕业证如何办理
一比一原版(TMU毕业证)多伦多都会大学毕业证如何办理
 
欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】
欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】
欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】
 
太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】
太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】
太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】
 
How to create an effective K-POC tutorial
How to create an effective K-POC tutorialHow to create an effective K-POC tutorial
How to create an effective K-POC tutorial
 
一比一原版(UVic毕业证)维多利亚大学毕业证如何办理
一比一原版(UVic毕业证)维多利亚大学毕业证如何办理一比一原版(UVic毕业证)维多利亚大学毕业证如何办理
一比一原版(UVic毕业证)维多利亚大学毕业证如何办理
 
Personal Brand exploration KE.pdf for assignment
Personal Brand exploration KE.pdf for assignmentPersonal Brand exploration KE.pdf for assignment
Personal Brand exploration KE.pdf for assignment
 
Exploring Career Paths in Cybersecurity for Technical Communicators
Exploring Career Paths in Cybersecurity for Technical CommunicatorsExploring Career Paths in Cybersecurity for Technical Communicators
Exploring Career Paths in Cybersecurity for Technical Communicators
 
han han widi kembar tapi beda han han dan widi kembar tapi sama
han han widi kembar tapi beda han han dan widi kembar tapi samahan han widi kembar tapi beda han han dan widi kembar tapi sama
han han widi kembar tapi beda han han dan widi kembar tapi sama
 
RECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdf
RECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdfRECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdf
RECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdf
 
一比一原版(YU毕业证)约克大学毕业证如何办理
一比一原版(YU毕业证)约克大学毕业证如何办理一比一原版(YU毕业证)约克大学毕业证如何办理
一比一原版(YU毕业证)约克大学毕业证如何办理
 
Chapters 3 Contracts.pptx Chapters 3 Contracts.pptx
Chapters 3  Contracts.pptx Chapters 3  Contracts.pptxChapters 3  Contracts.pptx Chapters 3  Contracts.pptx
Chapters 3 Contracts.pptx Chapters 3 Contracts.pptx
 
New Explore Careers and College Majors 2024.pdf
New Explore Careers and College Majors 2024.pdfNew Explore Careers and College Majors 2024.pdf
New Explore Careers and College Majors 2024.pdf
 
Brand Identity For A Sportscaster Project and Portfolio I
Brand Identity For A Sportscaster Project and Portfolio IBrand Identity For A Sportscaster Project and Portfolio I
Brand Identity For A Sportscaster Project and Portfolio I
 
DOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdf
DOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdfDOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdf
DOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdf
 

Google Interview Prep Guide Software Engineer

  • 1.   Google Interview Prep Guide Software Engineer What’s a Software Engineer (SWE)? Software Engineers (referred to as “SWEs”) at Google develop the next-generation technologies that change how millions of users connect, explore and interact with information and one another. As a SWE, you’ll be responsible for the whole lifecycle of a project critical to Google’s needs, with opportunities to switch teams and projects as you and our fast-paced business grow and evolve. Depending upon the project you join, you could be involved in research, design, planning, architecture, development, test, implementation and release phases. You'll be working on products that handle information at a massive scale, bringing fresh ideas from all areas and tackling new problems across the full-stack as we continue to push technology forward. Why Google? Impact. Google is and always will be an engineering company. We hire people with a broad set of technical skills who are ready to tackle some of technology's greatest challenges and make an impact on millions, if not billions, of users. At Google, engineers not only revolutionize search, they routinely work on massive scalability and storage solutions, large-scale applications and develop entirely new platforms around the world. From AdWords to Chrome, Android to YouTube, Cloud to Maps, Google engineers are changing the world one technological achievement after another.  
  • 2.   General Interview Tips Explain: ​We want to understand how you think, so explain your thought process and decision making throughout the interview. Remember we’re not only evaluating your technical ability, but also how you approach problems and try to solve them. Explicitly state and check assumptions with your interviewer to ensure they are reasonable. Clarify: ​Many of the questions will be deliberately open-ended to provide insight into what categories and information you value within the technological puzzle. We’re looking to see how you engage with the problem and your primary method for solving it. Be sure to talk through your thought process and feel free to ask specific questions if you need clarification. Improve: ​Think about ways to improve the solution you present.It’s worthwhile to think out loud about your initial thoughts to a question. In many cases, your first answer may need some refining and further explanation. ​If necessary, start with the brute force solution and improve on it — just let the interviewer know that's what you're doing and why. Practice: ​You won’t have access to an IDE or compiler during the interview so practice writing code on paper or a whiteboard. Be sure to test your code and ensure it’s easily readable without bugs. Don’t stress about small syntactical errors like which substring to use for a given method (e.g. start, end or start, length) — just pick one and let your interviewer know. The Technical Phone Interviews Your phone interview will cover data structures and algorithms. Be prepared to write around 20-30 lines of code in your strongest language. Approach all scripting as a coding exercise — this should be clean, rich, robust code. 1. You will be asked an open ended question. Ask clarifying questions, devise requirements. 2. You will be asked to explain it in an algorithm. 3. Convert it to a workable code.(Hint: Don't worry about getting it perfect because time is limited. Write what comes but then refine it later. Also make sure you consider corner cases and edge cases, production ready.) 4. Optimize the code, follow it with test cases and find any bugs. google.com/​careers 
  • 3.   The Coding & Algorithm Interviews Coding: You should know at least one programming language really well, preferably C++, Java, Python, Go, or C. You will be expected to know APIs, Object Orientated Design and Programming, how to test your code, as well as come up with corner cases and edge cases for code. Note that we focus on conceptual understanding rather than memorization. Algorithms: ​Approach the problem with both bottom-up and top-down algorithms. You will be expected to know the complexity of an algorithm and how you can improve/change it. Algorithms that are used to solve Google problems include sorting (plus searching and binary search), divide-and-conquer, dynamic programming/memoization, greediness, recursion or algorithms linked to a specific data structure. Know Big-O notations (e.g. run time) and be ready to discuss complex algorithms like Dijkstra and A*. We recommend discussing or outlining the algorithm you have in mind before writing code. Sorting: ​Be familiar with common sorting functions and on what kind of input data they efficient or not. Think about efficiency means in terms of runtime and space used. For example, in exceptional cases insertion-sort or radix-sort are much better than the generic QuickSort/MergeSort/HeapSort answers. Data Structures: ​You should study up on as many data structures as possible. Data structures most frequently used are arrays, linked lists, stacks, queues, hash-sets, hash-maps, hash-tables, dictionary, trees and binary trees, heaps and graphs. You should know the data structure inside out, and what algorithms tend to go along with each data structure. Mathematics: ​Some interviewers ask basic discrete math questions. This is more prevalent at Google than at other companies because counting problems, probability problems and other Discrete Math 101 situations surround us. Spend some time before the interview refreshing your memory on (or teaching yourself) the essentials of elementary probability theory and combinatorics. You should be familiar with n-choose-k problems and their ilk. Graphs: Consider if a problem can be applied with graph algorithms like distance, search, connectivity, cycle-detection, etc. There are three basic ways to represent a graph in memory (objects and pointers, matrix, and adjacency list) — familiarize yourself with each representation and its pros and cons. You should know the basic graph traversal algorithms, breadth-first search and depth-first search. Know their computational complexity, their tradeoffs and how to implement them in real code. Recursion: ​Many coding problems involve thinking recursively and potentially coding a recursive solution. Use recursion to find more elegant solutions to problems that can be solved iteratively. google.com/​careers 
  • 4.   The System Design Interviews Operating Systems: You should understand processes, threads, concurrency issues, locks, mutexes, semaphores, monitors and how they all work. Understand deadlock, livelock and how to avoid them. Know what resources a process needs and a thread needs. Understand how context switching works, how it's initiated by the operating system and underlying hardware. Know a little about scheduling. We are rapidly moving towards multi-core, so know the fundamentals of "modern" concurrency constructs. System Design: System design questions are used to assess a candidate's ability to combine knowledge, theory, experience and judgement toward solving a real-world engineering problem. Sample topics include features sets, interfaces, class hierarchies, distributed systems, designing a system under certain constraints, simplicity, limitations, robustness and tradeoffs. You should also have an understanding of how the internet actually works and be familiar with the various pieces (routers, domain name servers, load balancers, firewalls, etc.). For information on system design, check out our ​research on distributed systems and parallel computing. Resources Books Cracking the Coding Interview Gayle Laakmann McDowell  Programming Interviews Exposed: Secrets to Landing Your Next Job John Mongan, Eric Giguere, Noah Suojanen, Noah Kindler Programming Pearls Jon Bentley Introduction to Algorithms Thomas Cormen, Charles Leiserson, Ronald Rivest, Clifford Stein Interview Prep How we hire Interviewing @ Google  Candidate Coaching Session:Tech Interviewing  CodeJam: Practice & Learn Technical Development Guide About Google Company - Google The Google story Life @ Google Google Developers Open Source Projects Github: Google Style Guide    Google Publications The Google File System Bigtable MapReduce Google Spanner Google Chubby google.com/​careers