Menu

 

Thoughts on Software Engineering

My Interview at Google in Zurich

Google - Zurich Office

A week ago I visited Google in Zurich, Switzerland. Initially I didn’t consider working in Google and changing my job. During the years many of their recruiters asked me once monthly (at average) to join Google. I had so much invitations to join Google in Mountain View, Zurich, Munich and other locations that I finally decided to check whether they offer an interesting for me career opportunities by visiting some of their offices onsite. Wise people say that you could never know what is best for you unless you check it. I had many friends working in Google and most of them were excited about their job. After passing successfully two phone interviews I was invited at the Google office in Zurich for a comprehensive full day interview. It was a stirring event for me – to visit Google in their development center in Switzerland.

Google Interview Process is Like a Programming Olympiad

I was amazed how Google perform their interviews. Really! They asked me only about data structures and algorithms. I was feeling like at a programming contest. I needed to solve 10 Olympiad-style problems, each for 20-30 minutes. They requested to write a source code on the dashboard. Of course I solved the problems but I thought this is the first part and the real software engineering part will come later.

I will not reveal any of the questions (because I signed NDA) but their interview style was like at the programming contests and Olympiads. I had pretty rich experience with data structures, algorithms, algorithmic thinking and solving such problems in my childhood and during the student’s years, but I din’t expect that these years will come back some day.

Trust me, a 15 years old schoolboy who is a good programming contestant (e.g. some of the Bulgarian National champions) can pass these questions without having any experience in commercial software engineering. I expected more software engineering questions about software design and architecture, large-scale databases and information systems, Internet applications, information security, parallel programming, threads, synchronization, development process, software quality, testing, life-cycle, software project management, agile development, etc. but the interviewers didn’t even mention any of these topics. I applied for senior position and it was normal to expect serious software engineering and technical questions, but this didn’t happen.

That was all. Nobody asked me about my software engineering skills, software technologies, project management, and other skills. Only algorithms and problems solving, data structures, computational complexity, etc. This was whole the day, nearly 6 hours.

Google Interviewers Don’t Ask About Software Engineering, Technologies and Soft Skills

During the years I have been interviewed successfully in lots of interviews and I really have a good idea about how an interview should be conducted. My job is to conduct technical interviews and train people. I have been interviewer for tens of job candidates but I have never thought that some company could employ people only based on their technical skills, and particularly on just a piece of them: algorithms, data structures and problems solving. This is really unexplainable. The best companies I have worked with usually ask at their interviews about personal character, about non-technical skills, about future plans, etc. They try to assess the candidate’s motivation, to check whether his mindset matches the company’s beliefs and values, to check the team working ability, etc. This is usually done in addition to the comprehensive technical assessment with real-world problems regarding software technologies, software architectures, databases, distributed applications, Web applications, etc.

Below are few important (by myself) topics that Google don’t even touch at their interviews (by my recent experience):

1) Google interviewers don’t ask anything about software technologies, e.g. AJAX, Java, Java Web development, databases, SQL, ORM, XML, Web services, parallel programming, multithreading and synchronization, software architectures, design patterns, etc.

2) Google interviewers don’t ask about software engineering, e.g. the software project life-cycle (requirements, design, implementation, testing, etc.), continuous integration, agile development, project management, etc.

3) Google interviewers don’t ask about your experience. They don’t ask any questions about what is your current job, what is your experience, what projects you have worked on, etc. Your experience is just ignored. It is like you apply for your first job and you have never worked anywhere else. I was frustrated. I had nearly 12 years of experience as software engineer and they just ignored this. Normal companies always consider your experience and evaluate it with technical and other questions. Google Zurich just ignore it.

4) Google interviewers don’t ask anything about your personal character, e.g. are you a team pleayer, are you capable to manage a team, do you have experience working in an International team, do you have good communication skills, etc.

It is really strange. My experience shows that when you want to hire a software engineer, his personal character, mindset and soft skills are more important than his technical skills. Algorithmic thinking is important but is not enough for somebody to be a good software development professional and good team player.

How Google will employ somebody who has only algorithmic thinking and analytical skills without having any other software development skills, software engineering experience, the right mindset and attitude, team working and communicational skills? I have no idea. I asked my colleagues working for Google and they said they also don’t have an idea. Strange … I thought that these algorithmic interview questions are some kind of starter and the real interview will come later, but during the entire interview day I passed 10 interviews with 10 different people and all of them asked me nearly the same things: data structures, algorithms and solving Olympiad-style problems.

Why I was not Offered a Position in Google? Am I Overqualified or Underqualified to Work in Google or Just had Overexpectations?

I week after my visit to Google I was informed that my results at the interview were very good but I was not accepted because they don’t have a suitable position for me. It was strange because I solved well all the algorithmic problems during my one-day-long interview sessions in Zurich. I saw positive feedback at the faces of the interviewers. People asking me to solve algorithmic problems were happy of my solutions. It is not hard to notice when something goes wrong, but this was not the case. All interviewers were enthusiastic and happy of my answers and proposed solutions. Most of the other job candidates that had an interview in Zurich in the same time didn’t pass all of the 10 interviews and were rejected after the first 2-3 interviews. This gives me and additional sign that I performed well. If I was not performing well why I need to lose the time of 10 different interviewers?

I am confident about my analytical and problem solving skills because I was a leading programing contestant for more than 10 years, a champion in tens of Olympiads and programming contests (Bulgarian and International). The algorithmic questions were not complex for me, I just solved them in a good way. There were no other questions except the algorithmic ones so I believe I passed the interview with very good results. Unfortunately I was not offered a job position and I was not given a good explanation.

I have one suspicion why this happened: I was asked to fill an employment application form in which I was asked about the salary I expect. Of course, I requested many times better payment than my current payment in Sofia because I needed a good reason to move. Maybe I requested too much (I can’t say how much because it was also under NDA).

I was a medal winner at many Olympiads and champion in tens of programming contests, had nearly 12 years of commercial experience as software engineer, trainer, consultant, project leader and entrepreneur, and currently had very high technical position in Sofia. In order to make a big change in my life I needed really good reason. Maybe I had financial overexpectations?

The other possibility is that maybe I was overqualified to work in Google for the position they interviewed me. By the questions I was asked I can conclude that they needed a very junior software engineer with no experience and my rich experience was an obstacle. Whether this is true I am not sure, but definitely the interview was strange and I definitely answered all the interview questions well.

Few Words about Google’s Office in Zurich

The working environment I visited was really good and the people I met were very smart, energetic, smiling and positive. The people at the office, the office facilities, the equipment, the recreational room, the free-of-charge restaurant and many other things in Google Zurich made a very positive impression to me. I use many services from Google every day and I my positive attitude survives regardless of my experience in Zurich at my interview in Google. I think Google is a good company and something happened by mistake with my job application. Some day our ways could cross again, who knows?

Previews (38,159), Views (28,317), Comments (36)

36 Responses to “My Interview at Google in Zurich”

  1. Aishwarya says:

    What is the procedure to get a job in Google, Zurich?
    What are the qualifications needed?
    Please let me know ASAP..

    Thanks,
    Aishwarya

  2. nakov says:

    I was contacted by few Google recruiters in LinkedIn. Try to search in LinkedIn for “recruiter Google”.

  3. toni says:

    I had only two phone interviews with Google Zurich so I guess I didn’t
    do well in the second.. Still, I made a single mistake in the first coding exercise
    (which was very simple) and I fixed it in less than a minute.. In the rest of the
    questions the interviewer seemed satisfied with my answers. So, I guess their standards
    are very very high if I was punished for a single mistake and because of that
    was not even invited for an on-site but I must admit that I don’t even come close to your years of experience. So, there is a possibility that they found somebody
    even more skilled than you (maybe a top person from TopCoder or something like that) and more importantly, a person who asked less money.
    I only have one question for you. Did you make any mistakes on the technical phone screens ?
    Good luck if you intend to reapply!

  4. nakov says:

    I didn’t make mistakes at the interview, but I believe that the technical skills are not the only criteria for invitation in Zurich. I think the interviewer listens how you analyze and attack the problems, the way you think. It is usually more important that the results you obtain. Sometimes interviewers just have a feeling about you formed by the way you talk, the way you think and the way you express your thoughts. If it does not match his / her expectations, this could be a problem.

    Regards, Svetlin

  5. Syskeyes says:

    Last month I heard Google’s CEO yammering about missing a great chance to employ a super-candidate from Bulgaria. And all because his recruiters did not recognize the great potential in you. Strangely, I cannot assume that Google cannot offer an appropriate position to such a monstrous mind like yours. Successful companies usually do not make this kind of mistakes. So, I desparately beg you, Dr. Nakov, not to leave us yet and wait here for a greater company to appear on the market since Google is not of your scale.

    Btw, how quickly can you think of an algorithm that calculates the percentage of irony in this post?

  6. William Larsson says:

    Answerring to comment no.5:

    Dear Mr. Syskeyes,

    Unfortunately we cannot allow google to obtain such a brilliant intellect for themselves, so we are preparing a 8 digit sum per month (after taxes) and a room with a window view in order to win the services of Mr.Nakov in NASA.

    Thanks for your understanding!

  7. Toni says:

    Also don’t forget that if you apply for a job at Google, the history of all your google-searches will get on the table (at least on somebody’s table) 😉

    • nakov says:

      I didn’t think about this, but I suppose it is true. Why don’t they use this information. They have it. And they also have my mailbox for the last 7-8 years. I am curious what Google have about me.

  8. Peter says:

    If you asked for more than 160,000 CHF (before taxes), you asked for too much. If you asked for more than 200 K, you are out of your mind. 🙂 Don’t worry – you can share the number. Nobody will sue you. You were definitely not overqualified. No software engineer is overqualified to work for Google. It was entertaining to read that you thought this could be the problem. It might have been a communication or a culture problem. You found the interview somewhat frustrating. Maybe the interviewers felt the same way. If you seemed even a little annoyed by the questions, that wouldn’t be considered a positive sign.

  9. Johnny says:

    Svetlin, a google search shows you’re born in 1980. So, in 2007, at the time of writing this article you were 27 years old. Do you really claim at 27 you’ve had 12 years of commercial software development experience?

  10. joe says:

    I think exaggeration might be the reason that you did not get the job!

  11. Sergey says:

    i guess they just avoid bullshit which is inherent to big software company. i’m not sure that all these fashioned words like influence much their processes. bright mind, good algorithmic skills is more then enough))). that’s what they are looking for.

  12. Sergey says:

    *all these fashioned words like Internet applications, information security, parallel programming, threads, synchronization, development process, software quality, testing, life-cycle
    if u won contests u should have both – bright mind and algorithmic skills. i guess they just didn’s like u…

  13. Sergey says:

    indeed if u are really brilliant, u can try to create smth like google on ur own, why not? there are a lot of unsolved tasks at the conjunction of science and commerce… may be your ideas about employment policy will be better than the google’s

  14. Sergey says:

    i don’t think that tasks in tasks in dos prompt is something bad. programming is not about interface unless u are gui programmer. and really sophisticated computer science tasks lie in mathematics, not in ‘life-cycle’. google prefers scientific-oriented thinking to usual interface programming.

    • nakov says:

      There are many, many more tasks that are important for the developers in addition to algorithms, UI and software technologies, e.g. parallel computing, cloud computing, transaction processing, project management, agile development, unit testing and continous integration etc., etc., etc.

  15. Miro says:

    This post is just “Woooow”…
    http://blogs.msdn.com/b/jw_on_tech/archive/2012/03/13/why-i-left-google.aspx

    Google was the rich kid who, after having discovered he wasn’t invited to the party, built his own party in retaliation. The fact that no one came to Google’s party became the elephant in the room. (Google+)

  16. You know, I had the same exact experience at Google’s Boulder office. Algorithms, algorithms, algorithms. Especially with a focus on a divide and concur (can you say Nlog(N)?) approach.

    Google is filled with a bunch of aspergian trans-humans. A log(N) approach to the world is great for scale but not too good for building effective, understandable technologies for normal people.

    -Jeff

  17. Y'hud says:

    Actually, it’s very probable that Google’s recruiters don’t give a damn about your algorithmics and problem solving skills …

    That’s just why they didn’t hire you. You are that sure that the recruiters were that happy with your answers? Mmmmh maybe you should review your way of thinking. You know, it’s the very job of the recruiters *not to show* what are they actually thinking about an applicant. Especially at Google. Damn yeah.

    If they pretended being satisfied with what you gave them, and if you believed they were; then probably you don’t fit their needs. Google just don’t need people who think that what they do is _by default_ correct. They are plenty of very good programmers with strong algorithmics skills. They don’t need that. They need freshness and imagination, not too much self-confidence, just enough to propose to do something else, something new, that wasn’t planned in the checklist.

    You think Google didn’t mind about your character? If you want my opinion – or not, by the way – their interview was all about your character, and since through this little article I can easily guess some obvious features of it, it is *that obvious* that in ten hours observing you, with many observing experts, while you were gently solving the crapest problem they could have found in the end of their drawers, they probably know all what they needed to know about your character, your ability to solve real-live problems, even to invent them just for the pleasure solving them.

    Just admit that they don’t give a damned crap about your “olympiad-skills”. You passed all … So what … Why wouldn’t they hire you, then? It was all about your damned character, and you’ve been trapped man. I even think that they planned you would write such article after the interview.

    They don’t need such people. Really.

  18. Valentin I. says:

    Gee, what is this, “the greatest idiot post” contest? Because we have a winner – that is, several winners – Y’hud, Joe, Sergey, Syskeyes, William Larsson. Especially Y’hud. And Sergey. And the rest.

    It is good to know cretins like this exist.

    Nakov, keep up the good work, posts by little mice like these only go to show you are on the right track.

  19. asiz says:

    Am “I” the only one, who see that word so many times?

  20. Chandra says:

    I am loving this book :
    Top 10 coding interview problems asked in Google with solutions: Algorithmic Approach
    http://www.amazon.com/gp/product/1482799014/

  21. Your article surely began an interesting dialogue!

  22. interviewee says:

    My 2 cents:
    1. This is true for all software companies: even though they do not/may not ask you directly about design/product cycle/internationalization etc. sides of the problem, they certainly expect you to think aloud about them while you are solving the problem. No matter how simple or routine the problem may seem, your first questions should always be: Who’s going to use it? What would they want to achieve? How can we generalize/explore further? etc.
    2. I believe this is true mostly for Google, especially at their US locations. The interviewers are NOT evaluators. They are supposed to guide you through the process, clarify the problem, answer any questions you have, script your responses, ideas, how you came up with the answer, the PRECISE code you wrote, etc., and send this to evaluators who have never seen your eyes. They determine whether to extend an offer based on what they read. The interviewers are allowed to put some observations on your character, of course, but they would not say whether your answer is correct or wrong, complete or not, etc. I believe interviewers don’t even give a recommendation on a decision.
    Hope this helps, and good luck in your future endeavors!

  23. Eric says:

    I know why you didn’t get a job offer:

    Your Ego.

    Your ego is a problem. Your website is all about how experienced you are, the fact that you speak at conferences, how many medals you won, cute pictures of yourself on the phone to make us understand how important you are.
    This article is all about how easy interviews were for you, and how you didn’t make a single mistake (or so you think..)

    Well read this:
    How to get a job at Google:
    http://www.nytimes.com/2014/02/23/opinion/sunday/friedman-how-to-get-a-job-at-google.html?_r=0

    Let me quote it for your:
    “What else? Humility and ownership. “It’s feeling the sense of responsibility, the sense of ownership, to step in,” he said, to try to solve any problem — and the humility to step back and embrace the better ideas of others.”

    You clearly would failed here.
    You sound like the self satisfied douche that is just too good to accept criticism or the fact that other people might have a better idea than you.

    Nobody wants to work with people like that.

    I am probably half as smart as you, but I don’t fail at recognizing that.

  24. Ras says:

    Interesting post. I recently had onsite Interview at Google in California.

    Out of 5 onsite interviews, 4 of them were pure algorithm based and 1 of them was System Design for me. I flunked 2 of the algorithm based question, but I thought I did pretty well on the System Design.

    What question you get asked entirely depends upon the interviewers. A friend of mine got 3 System Design questions. Maybe you have had a bad luck getting all algorithm based question, but I do agree with you that there should be more focus non-algorithm based. I felt more manageable to prepare for Google (except System Design) for someone fresh out of school rather than having 5 years experienced in industry.

    Overall, it was great experience for me and I look at it in a positive way. I got the opportunity to review my algorithm after 5 years, and that will definitely help me in other interviews.

    You are smart and brilliant. It was their loss for not hiring you :).

  25. anonymous says:

    Good to read about this post. Its strange that only algorithmic questions were only asked. For senior folks Google does generally asks System design as well. Regarding technologies like ajax, sql etc Google internally has many internal technologies, so they are not focussing on every technology you have learnt.

    Re: “Trust me, a 15 years old schoolboy who is a good programming contestant (e.g. some of the Bulgarian National champions) can pass these questions without having any experience in commercial software engineering”
    The intelligence of the person can be easily measured with the way they think. The coding standards that some one expects with a 10+ yr experienced person is way different than a college grad or a 15 years old schoolboy.
    The software development standards can be very easily understood based on the way the person writes code.

  26. hi!,I like your writing so a lot! proportion we keep in touch more
    approximately your post on AOL? I require an expert on this house to
    resolve my problem. Maybe that is you! Taking a look forward to peer you.

  27. Barney says:

    My spouse and I stumbled over here from a different page and thought I might check things
    out. I like what I see so now i am following you. Look forward to checking
    out your web page for a second time.

  28. With Fastest Fox, you can simply highlight a word,
    or a sentence, and it will pop up a dialog box that allows
    you to immediately search popular sites such as Google or You –
    Tube. If one has a stone drive, its crucial to scrape out
    all the mud and the top layer of your existing stone and then put down fresh stone before starting to clean anything.
    Data Loader stacks the information utilizing
    the accompanying Methods.

  29. First of all I want to say excellent blog! I had a
    quick question in which I’d like to ask if you do not mind.
    I was curious to know how you center yourself and clear your head prior to writing.
    I have had difficulty clearing my mind in getting my thoughts
    out there. I do take pleasure in writing
    but it just seems like the first 10 to 15 minutes are lost
    just trying to figure out how to begin. Any suggestions or tips?
    Thanks!

  30. Hi there colleagues, its impressive paragraph concerning cultureand fully defined, keep it up all the time.

  31. Thanks a bunch ffor sharing this with all people yoou really recognise what you’re speaking approximately!
    Bookmarked. Kindly also talk over with my website =). We could
    have a hyperlink alternate contract among us

  32. някой си says:

    Hehe….Well,its Feb 2015,Mr.Nakov is leading his own Software Univercity in Bulgaria with thousands of students.And nobody needs this f*ked up job at Google 😉 That puts to rest all the ignorant trolls,who dont even have idea of the skills and education of Mr.Nakov ,when writing BS… Im proud of my compatriot Mr.Nakov,he actually had graduated the same secondary school like me in Veliko Turnovo,Bulgaria!Bulgaria rocks!

  33. Zhivko Tyankov says:

    3 years ago I was interviewed the same way from Amazon. The interview process was similar, only technical questions, problem solving tasks, writing code on a blackboard, etc. I spend 5-6 hours, several interviews and all of them were the same. I have the same background like Mr. Nakov, graduated from Sofia Universit and of course I did great on all the interviews. I also applied for a senior position with several years of experience on the field, but I was also surprised that this was not taken in to account at all. Eventually I’ve got a really good offer from them, but I was suspicious after the entire interview process and turned it down. Dont know if the things are changed over the last couple of years, but I also don’t believe this is the right way to hire qualified and good software engineers. Apparently the big software giants can afford hireing anyone and fire them in a short term if they don’t meet the expectations. Definetely not the right way of doing things. Still getting contacted from Amazon, but just ignoring them, don’t know if I’ll ever consider working for them.

  34. nakov says:

    Seems like the big players have their own rules, hiring process and career development principles. You either agree and follow their rules, or just drop and go to work in a start-up or in a smaller company.

RSS feed for comments on this post. TrackBack URL

LEAVE A COMMENT