An Interview with Google

By Chris L Hardin
Sr. Software Architect
Things always seem to work out for the best, especially when it comes to my prospects of working for Google last year.
I managed to get an email from a Google recruiter and after the small preliminary interview, I landed the first technical interview. Keep in mind there are about 3 interviews in the whole process. The last is the Google Office in New York, Boston or California, whatever office that they are interested in putting you. I assumed that the technical interview would go very well, since I was informed it would center on javascript and Web development and a little java.
The Technical interview only lasted 30 minutes on the phone. The interviewer seemed to be in a real big hurry, I guess he had more interviews lined up with 30 minute slots. The questions were simple questions.

1. How would you save state without reloading the page?

Create a XML HttpRequest and push the state data you want to save back to the server and store it in the session or write the data to a cookie locally.
He seemed “ok” with this answer, but kept pushing me like there was a particular response he was wanting to hear, but he moves on to the next question.

2. How do you or have you handled the back button in other Ajax projects?

Most projects I have worked on, ignored the back button or disabled it, but if I must handle it, then you have to keep track of the users actions and when they click back, you have to intercept and roll them back through your own history you manage instead of letting it navigate away from the page.

3. Have you used the Google Web Toolkit before?

No, I looked at the Google Web Toolkit before at the same time I looked at all of the other Ajax frameworks and I determined Ext has the greatest flexibility and richest components with for the projects I have been working on. (this is where I screwed up, but this I’ll tell you about later.)

4. What OO patterns do you use regularly?

MVC Model View Controller, Data Access Objects, Singletons, etc.

I assumed by my answers everything went well, but then here is where it went downhill. The interviewer explained to me that he was the lead on the Google Web Toolkit and had a large hand in creating it and I was to be on his team, I was like, crap, I just rendered a killing blow to his ego earlier when I said I chose Ext over his framework. In hindsight, I probably should have asked what his job was first or at least said I had no knowledge of the Google Web Toolkit.

He explained to me that the google web toolkit was better because it was entirely written in Java and the toolkit was generated and compress into the javascript API.

My reaction, to myself of course, was that I really don’t want to work on a project like that. I love writing Java and I love writing Javascript, but I don’t like one to write the other. He said that this keeps his people strictly in the Java realm and can use the IDE to validate the builds. I have to admit, I just skimmed the iceburg and might have liked it if I saw it in action.

At this point, he was ready to get off the phone. I was being as nice as I could possibly be to repair the damage I did by insulting his project. I asked him a few questions about how the hiring process works and all and then we parted ways.

I received an email a couple weeks later after pressing the Google recruiter and they said they wouldn’t be able to continue interviewing me. I tried to get information on why and how I did in the interview, including the responses the guy was looking for and I was denied.

Well, remember I said things work out for the best? The next month, there was an announcement that Google recruiters were suffering a layoff and the recruiter that I was introduced to was gone. Then another month, the heat of the recession last year, I heard an announcement that a large number of contractors were being let go. I was to be a contractor when I started.

So, it worked out well. I was honored to have been picked to interview and it was an experience. I would hope that one day I could have another opportunity to interview again. Google is still a great company…even though I like Ext better than their silly little toolkit.