Tags: sydney |
Posted by
Admin on
7/27/2008 2:50 PM |
Comments (0)
Find previous part here.
In my holidays I’d gotten to see some of the fruits of my 35
graduate applications made earlier in the year. The demand is high,
yes, but for skilled labour, not us university grads.
Especially not those who are travelling to Europe for a month, or 8.
Employers love well rounded graduates, as long as they get well rounded
in their own time.
Some graduates, the really well loved ones, actually get an
upfront bonus, free plane tickets and a pat on the ass in return for a
signature on a 2 year contract. Not me though.
When Google emailed regarding a visit to their Sydney headquarters I
was quite pleased with myself. It was like winning a raffle where your
resume is the winning ticket. I estimate that Google Sydney interviews
between 150 - 300 people every year, but the figure could be as high as
1000 after hearing that some employees can interview up to five people
a day. Considering Google (as a whole) gets around 1,000,000 applications a year a reported 99.5% of which are rejected, I wasn’t doing badly at all.
Google have been complaining about the lack of quality computer
science professionals for some time now, especially in Australia where
CS departments are slowly getting absorbed into commerce in the face of
rising costs and lower enrolment figures. Face it, IT is nerdy.
Combine this with growth that has seen the Sydney office double in
size for the last few years and the smile on my silly face just kept
growing and growing. You see: by my mathematics Google must hire at
least 25% of it site interview candidates to grow at the rate it does.
A one in four chance to work for Google isn’t something you should pass
up easily. So I began to study again.
Putting aside the work I’d done so far, I started again. The HR lady actually directed me to the following links:
I highly recommend that you take a look at a very
helpful text book to help you prepare for the in depth questioning as
part of the Tech Phone Screen -
‘The Practice of Programming’ by Brian W. Kernighan (Author), Rob Pike (Author)
Want to know what some sample sets of problems there might be? Check out:
http://steve.yegge.googlepages.com/five-essential-phone-screen-questions
http://steve.yegge.googlepages.com/what-you-need-to-know
http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html
You can check out some of our recent projects beyond Google search by
visiting http://labs.google.com and review some of our research publications: http://labs.google.com/papers.html
Visit www.youtube.com/google for more information on the Google recruiting
and hiring process. The video is titled - “Interviewing at Google”
http://au.youtube.com/watch?v=ZxZOpNUN3Ww&feature=PlayList&p=2299EEC65662D7F5&index=0
And one last helpful tool, visit http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=alg_index
Please let me know if you have any questions. Good luck preparing!
Good luck indeed. I started by reading the resources and associated
links and kind of parsing the topics to study. The fall into the
following topics:
- Programming (Java / C++) - A good understanding plus how to implement the following:
- Big O Analysis - How to do it, the order of badness, should be able to look at functions and say order.
- Sorting Algorithms - Bubble, Sequential, Insertion, Merge, Quicksort
- Data Structures - Arrays, Trees, Hashtables, Vectors, Linked Lists, Queues / Stacks, Maps
- Object Oriented Programming - Basic concepts and how they should be implemented in your language
- Graph Analysis - Adjacency Matrix, Adjacency List, Dijkstra, A, Bredth First / Depth First Traversal
- Operating Systems / Concurrency - Concurrency, Locks, Mutexes, Semaphores, Deadlock and Livelock, Scheduling, Threads
- Scripting - Regular Expressions, Grep and other UNIX commands
- Probability - N choose K, Independent and dependant events
- Problems - Common / Famous problems: Travelling Salesman, Knapsack
Problem, NP Complete problems and their variants. For this The
Algorithm Design Manual recommended by Steve was invaluable, and you
don’t have to buy the book, its online here.
I worked by making a list of these ten topics with sub concepts in
sub lists. I went back to my CS notes from uni where I could, in the
event that I couldn’t find them (or the more probable: they were
destroyed) I used a lot of online resources. A lot of uni’s provide
their material online but as a Java student and applying for a Java
based role I found these lecture notes and these practice questions invaluable because they covered the implementation aspect of the above topics.
Then I read. You name it - if Google was a keyword, I read it. Whenever I got tired of studying the concepts I read about peoples experiences and various tips, I read (and worked) practice questions, more practice questions and what not to do and more practice questions.
In my breaks (breakfast, lunch, dinner) I watched video’s from the
Google channel. After revising for the Google Interview I found this particularly interesting viewing.
Then I began everything again, this time programming on a piece of
paper. You’d be surprised at how different programming is without a
compiler. Things like “for loops” just dont look the same written on
paper as typed on a computer screen. The IDE no longer helps you out,
there’s no bracket matching or syntax highlighting to cover your ass.
It’s strange - believe me, the last place you want to be learning this
is in the interview.
I flew into Sydney the day before the interview, the 5 hour flight
was useful to revise things. Remember to bring more than just material
to revise though, after the interview, on the flight back the last
thing you want to be doing is reading through that stuff. Take off and
landing (when electrical items have to be switched off and stowed) are
great times to read through those research articles.
A word of advice. A particularly obvious interview question leapt
out at me from one of the research papers I was reading. “How does
Google work?”. It’s probably a good idea to have at least a vague
understanding of this, you know, before you apply to work there.
The taxi driver was a software engineer, or at least studying to
become one. He said he’d applied for Google as well. As nice as the guy
was the whole experience didn’t instil me with confidence.
It was shortly after this the paranoia began to set in. I don’t know
exactly how much it had to do with the taxi driver being a programmer
but it occurred to me that if Google could afford to spend around a
grand flying me here and putting me up for the night, that the could
sure as hell afford to pay some security consultant / HR psychological
profiler $50 an hour to watch my every move for the time I was in
Sydney.
The improvement in my behaviour was remarkable, from that point
onward I became the model child my parents always wanted me to be.
Turning off lights when I left the room, cleaning behind my ears,
watching the news, being outwardly curious - even outdoorsy. Elements
that, to some degree, follow me to this day (6 days after the
interview).
I checked into my hotel, fantastic views but not overly extravagant,
functional. Had dinner in darling harbour and went through a final
checklist before bed:
1. Have questions to ask, don’t be afraid to write them down - it
shows you’ve thought ahead. I prepared a fair few. I tried to ration
these out among my five interviewers.
2. Have a list of possible projects you’d like to work on. In
addition to this tell them your ideas for Google. Tell them what annoys
you about Google, but do some research into why its done that way (in
case they have a valid and important reason that you’ve overlooked). If
you’re not sure, you can kill birds 1 and 2 by posing this as a
question.
Wasn’t sure what to do with a King size bed. Seriously, are there people who need this much freedom while unconscious?
.gallery {
margin: auto;
}
.gallery-item {
float: left;
margin-top: 10px;
text-align: center;
width: 33%; }
.gallery img {
border: 2px solid #cfcfcf;
}
.gallery-caption {
margin-left: 0;
}
In the morning I decided to take a look around Sydney. I visited the
Harbour Bridge and the Opera House on a morning run through the city. I
wanted to think that if this interview went to shit, I would still be
able to say I got a free trip to visit the Google offices in Sydney,
which is still a pretty good consolation prize.
I watched the news to ensure I was up to date with current affairs.
Ate breakfast at the hotel restaurant while reading Larry and Sergey’s
paper on Google. At 10.00 I checked out and began the walk next door to
the Google Offices.
Original story