Google: Final Call

I got the final call. I got called about half an hour ago, and the answer was that sadly I wasn’t chosen to be a part of Google’s big picture this time around.

The good news, according to the calling person, was that I did do rather well and was very much close to the hiring bar. The second interviewer, as described previously, didn’t find my code as tidy as he would’ve liked, and therefore had voted against me.

I will definitely be trying this out again, but for now, this concludes the series, Google Interview Process.

The Face to Face

I went in for the face to face.  The people were nice and friendly in the office. I did have a fairly nasty incident the night before, though.

Needless to say, travel costs including taxi fare were all covered by Google, so I hardly spent a penny.

I went out 10 something at night to grab some dinner. It was late and there were few places open. I started eating and then a guy came and sat next to me. Now, as the place was very small and it was one of the only few operational places left open, I did not think much of this, as it was already very cramped. He started talking to me and it soon became clear that he was from Cyprus and was here on business. I told him I’m also on a very short trip.

He ate a lot of food, and then left for the rest room. In the meanwhile I finished my meal and asked for the bill. The guy brought me my bill and I looked at it. 1200 Turkish Lira. My mind was blown away. I checked and realized that it was four times the number of items I had eaten, and mine was just amounted to 70 Liras — in retrospect, the hotel would have charged me somewhere near 100 Lira, with the difference that it would have been brought hot to my room and of a superior quality. Not to get sidetracked, I called the manager, a stocky short guy with a huge mustache. He told me that “my friend” had left and I had now to pay for him. He had three bottles of 250 Lira wine and lots of food. I dug into my pocket and realized that fortunately I didn’t have much money with me. Around 100 Lira just so that I could buy dinner, as that was the purpose for which I had set out in the first place.

I got into an argument and then he called his second, a tall guy, that I thought was going to beat me bloody. We counted my money. 110 Lira and 30 Euros. He suddenly looked at me and said in a heavily accented Persian, “Are you from Iran?” and I looked at him and said yes. He told me that the guy was probably with the manager, and that this was all a ploy. But he cautioned me that things might get ugly, and fast, and I told him that I was a student and this was all my money and that I had come for an exam and that my hotel was Topkapi in Aksaray. Fortunately, I didn’t have any identification or hotel information with me. If they had realized my real hotel was in the best part of the city things might have changed drastically.

He looked at me and then said because you are “Fars” and because I’m a student he will cover my back. He took all my Liras and 10 Euros and gave me back 20 for the ride back home. He went to the manager and signaled me to leave. I left quickly, shaken.

Well, that story left aside, let’s get to the actual interview.

The Interview

There were three separate interviews. Two with senior engineers from Ireland, and one with one engineer in Mountain View, California. I am not at liberty to divulge the names or the particulars of the interview — I think 😀 — but I will talk about the general theme of it, and will now go into as much detail as possible.

First Interview

The first interview opened with some small talk about the position I was going for, and I was asked whether or not I knew anything about it. I was then asked why I was interested in the job anyway, and what did it mean to me?

Then I was asked whether or not I had ever run into a major bug, in if yes, how I dealt with it. I went into as much detail as possible. I think it is always a good idea to give them the general idea of where the bug came from, and then if it is required, hint that you can go into more detail if necessary.

I was then asked about a particular subsystem of Google and how it could be designed from scratch. It was more like a two-person design brainstorming session and I think it was very much helpful in the way I answered it, since it stripped away my nervousness. I was then asked why somebody would want to abuse this product, and how would they go about it? Then I was asked to reverse the roles, and stop the attacks.

I was then given the time and opportunity to ask my own questions.

Second Interview

This one was more along the lines of my previous phone interviews, as it contained data structure and algorithms questions. It cannot be overstated that Google apparently cares a lot about bit manipulation as the topic again came up in this interview. I was also asked to design a game board for a certain, popular game.

Then, I was again asked to design a major feature of the Search product from scratch and describe what sort of data structure and algorithms were necessary for that product to operate in a reasonable fashion.

I was then again given the opportunity to ask my own question. This interview was observed by a younger interviewer-in-waiting and I was given the chance to interact with him as well by asking him questions about the whole company culture at the end of it.

Third Interview

The third interview was conducted with a gentleman working for Google’s PQO at the Mountain View offices. He gave me a general rundown of the whole job description in a minute and asked me to describe a major bug I had faced. I told him that I had already been asked that, and if necessary I could discuss the same thing with him, but if not, I was ready to answer another question.

He thanked me for telling him that, and asked me instead to describe a design challenge I had faced. I did, and he then gave me a somewhat data structure related question about one of Google’s anti-abuse strategies.

He then asked me a question in the same vein as the brainstormer from the first interview, this time about another particular sub product, and I gave him a design rundown. He then asked me to abuse and anti-abuse the product.

It was concluded by a friendly chat about the position and its technical aspects, as well as the whole culture of the company.

Conclusion

All in all, it was a pleasant, surprising, and very difficult process. It took over four hours and I was beaten up by the end of it, and could barely get myself back to my hotel. Hopefully, it will have gone well, and I will be receiving a positive feedback. But if not, I will be buckling my belt for the next round that life will present me with.

Cheers!

Preparing for the Face-to-Face

As I’ve mentioned before, I am scheduled for an onsite interview for the position of Anti-Abuse engineer at Google. The interview will take place in about 9 days — fingers crossed — and right now I am preparing myself by going over many different materials.

So as to leave a legacy of this effort behind, I am listing the sort of content I will be covering.

  • As always, the CLRS book. Especially the graph and advanced algorithms part.
  • I have also reviewed the Algorithms course on Coursera by Robert Sedgewick
  • I read a book titled “Are you smart enough to work at Google?
  • I am in the process of reviewing the book Cracking the Coding Interview.
  • I have read the Stanford book on Information Retrieval in which many nice concepts about the workings of any good search engine (including Google) are discussed.
  • As my position requires me, I am reading the specifics of the PageRank algorithm, and this includes a detailed reading on Markov chains and Markov processes.
  • I am also reviewing and thinking about the terms of use for different Google products. These include the terms of use for the AdWords and AdSense services, the webmaster guidelines for the Google index and other products made by Google. I am also trying to come up with ways to get around the policies, to get in the shoes of the opposition, so to speak.
  • I am also reading a lot about Google and its products in general.
  • For those of you who don’t know, I’m Iranian and we speak and write in Persian and therefore many a time I find myself searching for something on Google or other search engines in Persian. There are many times when I get frustrated by the number of fake, doorway websites people get ranked up on the results. So, the how of this is also one thing I will be thinking about.

Well, that’s all for now, folks.

UPDATE

I think to that list I need to add:

  • Scrum methodology
  • Design Patterns

On to da Face-to-Face

So, I heard back from my coordinator that I had successfully passed my third phone interview. I was told that the answer would come back in a week — if I was good — and maybe even later. And I was planning to have a month or two of exhaustive study and preparation before the face-to-face, should it come to that. But on Friday, a mere 36 hours after my phone interview, my coordinator called me and told me that they wanted to speed things up a bit, for me.

They had looked into it and had realized that the visa process for Ireland could be a bit longer than necessary for me — an Iranian. She asked me where would it be possible for me to attend without a visa. I immediately responded with Istanbul, Turkey. She wanted to schedule the interview for the coming Tuesday, less than a week from the phone interview. Even if I had not been panic-stricken, there was no chance of such a close date working out for me.

Since I have not yet attended my military service, and as such do not have a military discharge pass, I would need to ask for permission before leaving Iran. This means that I will need a week or two of paperwork for this to work for me. I told her as much, and now, I am supposed to have my final interview with the Google staffing team in Istanbul via video-conference in the week of 25th of January. Two weeks. Scary.

Anyways, I need to study for my proposed role of “Anti-Abuse Engineer” which will include any material available online about violation of terms and policies of the Google products, and how to deal with them.

So, this is where I stand, at the moment. More updates will come when and if things change.

Another Phone Interview

In nearly one hour I will be having my third, and hopefully final, phone interview. This one will be conducted with a software engineer from Google Zurich office. By the way, I have been busy prepping so I totally forgot to tell you all that my work location has been decided at last. It is not, as I had hoped, Sydney. It is Google’s EMEA (which stands for Europe, Middle East, and Africa) HQ at Dublin. I am actually very happy, because the job description states my position as an anti-abuse engineer, which indicates that I will be involved with a whole array of Google products, from mail, to AdSense, to YouTube. That’s actually quite promising.

I got another GoogleDoc shared with me, by “James Bond”. I now feel somehow that I’m applying for a super-spying company, rather than a tech corporation, given that my previous interviewers had the aliases “Anonymous Cheetah” and “Anonymous Possum”. Anyhow, I am nervous as hell. This time I will hopefully get to actually meet my interviewer face-to-face as the interview is going to be conducted over Google Hangout — if SSL-filtering does not break it for me, that is.

Well, off to do some last-minute studying and review.