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

Google Interview Prep Guide Strategic Cloud Engineer

The document provides information about the role of a Strategic Cloud Engineer at Google and tips for interviewing for the position. Strategic Cloud Engineers work with Google's largest clients to develop cloud strategies from inception to production and solve complex technical problems. The interview process includes phone interviews focusing on data structures, algorithms, and troubleshooting technical scenarios, as well as coding interviews to assess programming skills and system design abilities. Applicants are advised to practice coding without an IDE, explain their thought process, ask clarifying questions, and consider improving initial solutions.

Uploaded by

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

Google Interview Prep Guide Strategic Cloud Engineer

The document provides information about the role of a Strategic Cloud Engineer at Google and tips for interviewing for the position. Strategic Cloud Engineers work with Google's largest clients to develop cloud strategies from inception to production and solve complex technical problems. The interview process includes phone interviews focusing on data structures, algorithms, and troubleshooting technical scenarios, as well as coding interviews to assess programming skills and system design abilities. Applicants are advised to practice coding without an IDE, explain their thought process, ask clarifying questions, and consider improving initial solutions.

Uploaded by

Nathan Sullivan
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

 

Google Interview Prep Guide  


Strategic Cloud Engineer 
 

What’s a Strategic Cloud Engineer (SCE)?  


Strategic  Cloud  Engineers  work  with  some  of  Google’s  biggest  clients  to  develop  their  cloud 
strategies  from  inception  to  production.  They  solve  complex  technical  problems  which  are 
critical  to  our  clients’  businesses  such  as  distributed  systems  development  and  cloud  native 
transformation.  They  work  with  Product  Management  and  Product  Engineering  to  build  and 
consistently  drive  excellence  in  our  products.  As  part of the Google Cloud team in this rapidly 
growing  area,  you  will  help  shape  the  future  of  businesses  of  all  sizes  and  use  technology  to 
connect with customers, employees and partners. 
 

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  are  presenting, focusing on building 
for  scale  and change as it grows. 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.)  

  
 
careers.google.com 
4. Optimize the code, follow it with test cases and find any bugs.  

The Troubleshooting Interviews 


Troubleshooting  ​-  ​Interviewers  are  looking  for  a  logical  and  structured approach to problem 
solving  through  distributed  systems,  network  and  web  scenarios.  Make  sure  you  understand 
the  questions  and  ask  appropriate  follow-up  questions  to  the  interviewer  if  you  need 
clarification.  

Unix  /  Linux  ​-  ​Be comfortable working in a Linux Environment, and you’ll be expected to have 


a  good  working  knowledge  of  user-level  Linux  commands,  shell scripting, regular expressions 
etc.  Check  out  these  online  books:  ​The  Art of Unix Programming ​and ​Advanced Programming 
in the Unix Environment​. 

Web  Technology  ​-  ​Know  your  network  protocols  and  how  the  browser  works,  the  HTTP 
protocol,  cookies,  general  web  troubleshooting  (ability  to  diagnose  issues  step  by  step), 
Javascript and HTML. Brush up on HTTP Protocol basics:​ ​Part I​, ​Part II 

Networking  ​-  Show  off  your  depth  of  knowledge  and  understanding  of  network  theory,  like 
different  protocols  (TCP/IP,  UDP,  ICMP,  etc), MAC addresses, IP packets, DNS, OSI layers, and 
load balancing. Check out​ ​Computer Networking: A Top-Down Approach​. 

System  Design  ​-    ​Here  you  will  combine  knowledge,  theory,  experience  and  judgement 
toward  solving  a  real-world  engineering  problem.  Sample  topics  include  distributed  systems, 
designing  a  system  under  certain  constraints,  scalability,  elasticity,  robustness  and  tradeoffs. 
Make  sure  you  also  have  an  understanding  of  how  the  internet works and be familiar with the 
various pieces (routers, domain name servers, load balancers, firewalls, etc.).  

  
 
careers.google.com 
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  API’s,  Object  Oriented  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  from  both  bottom-up  and  top-down  algorithms.  Know 
Big-O  notations  (e.g.  run  time).  Algorithms  that  are  used  to  solve  Google  problems  include 
sorting  (plus  searching  and  binary search), greediness, dynamic programming/ memorization, 
divide-and-conquer, and algorithms linked to a specific data structure.  

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.  You should know the data structure inside out, 
and what algorithms tend to go along with each data structure. 

 
 
 
 

  
 
careers.google.com 
 
Resources 
Books  About Google 
Cracking the Coding Interview  Company - Google 
Gayle Laakmann McDowell  The Google story 
Programming Interviews Exposed: Secrets to Landing  Life @ Google 
Your Next Job 
John Mongan, Eric Giguere, Noah Suojanen, Noah  Google Developers 
Kindler  Open Source Projects 
Programming Pearls  Github: Google Style Guide
Jon Bentley 
Introduction to Algorithms 
Thomas Cormen, Charles Leiserson, Ronald 
Rivest, Clifford Stein 

Interview Prep  Google Publications 


How we hire  The Google File System 
Interviewing @ Google  Bigtable 
Candidate Coaching Session: Tech Interviewing  MapReduce 
CodeJam: Practice & Learn  Google Spanner 
Technical Development Guide  Google Chubby 
 

  
 
careers.google.com 

You might also like