Nikita SavchenkoNikitaSavchenkoeverywhere

Starting Career at Google

Google always was a special and somehow awaited company for me, and today I am happy to be joining it at the very beginning of 2020 as a Software Engineer. New decade, new adventures! I always wanted to realize how such big companies work from the inside out, and now in my 24, I can tell that this is the last wanted piece added from my knowledge. When all the pieces match together we'll make something exciting!

At least for a year, I will be based in Warsaw, Poland. My very first project at Google is Google cloud and Cloud Run in particular. Google Cloud is primarily developed and supported by Google Warsaw's hub, so that's why I am moving there.

Because many people were wondering, I am sharing my short story and some tips about Google below.

Disclaimer

Everything stated above and below expresses solely my own opinion and intentionally avoids revealing some internal data, processes, etc.

Getting my First Interview

Google has quite a comprehensive guide of how they hire. While many of these points were true for me, I got my first recruiter's contact via referral. Finding someone who works for a company and has at least something to reference you might not be that easy, however, having someone you already know (or a friend of a friend) and who started to work at Google lately is just a perfect case, which was exactly my case.

During my Internship in the US, I got many new friends and relations. Some of the interns I was learning with are now working in the top-10 companies. In fact, Google for American (or even Polish) students doesn't sound as super exiting and prestige as it is in my motherland, Ukraine (where currently2019 Google doesn't have an engineering office). Yes, it is a great achievement but anyway, people (as far as I can tell) are not living in dreams to join one of the top-10 companies one day.

So I got my referral and soon were contacted by a recruiter. I think referral just guarantees that the recruiter will screen your resume and contact you (or explain why aren't you applicable now), nothing more. Unfortunately, it does not lower the high bar Google sets for hire. Also, Googlers get bonuses for referring people if they are successfully hired, so this is in our interest too!

I suppose recruiters mostly look for talented people who have some prior experience (or even no experience for entry-level positions). Interestingly enough, your study and side project may also count towards this experience, but working for any other companies for 1-2 years will definitely make your CV stands out.

The Interview

It is widely known that Google has one of the hardest interviews across all companies, and, moreover, they are based more on algorithmic skills rather than practical conversations with interviewers. There is a bar which you have to match, and you are going to have a series of interviews after the recruiter decides to promote your application:

Phone Screening

This is the quick stage mostly for filtering those who don't match for the considered role at all (read: has no clue of how to approach problems). Depending on the position you are considered to (and this is important!), you will be assigned an appropriate task complexity, as well as for the upcoming series of onsite interviews. For entry positions, it could be a low-to-middle algorithmic/coding problem and maybe even some programming languages basics discussion (after you finish your primary assignment).

My call with the interviewer was just about 30 minutes and a couple of days after I got a positive sign from the recruiter that they are good to continue. The next stage is the onsite interview.

Onsite Interviews

After the successfull phone screening stage, Google will book everything to deliver you in person to one of its closest (or not - again, depends on the position) onsites to you. Mine was Warsaw, Poland - a central hub for Google Cloud development. By the way, you can ask to book your flight at any convenient time for you and, for example, spend a weekend in the city to understand whether you want to stay here. When interviews take place, you will come to Google office and Googlers will guide you through just smoothly.

Depending on a role you are considered to, Google will assign an appropriate series of interviews to you. It might be all algorithms/coding interviews or coding/system design interviews, again, depending on your considered role and an entry-level. Lately, Google also introduced a behavioral interview which also took place for me. Each of the interviews takes approximately 45 minutes, so plan to approach your problems with the allocated time in mind: do not dive into details to quickly and communicate everything to your interviewer!

One thing I want to admit anyway is that your interviewers are just Googlers who left their daily tasks and come to interview you. Think about how they will perceive you, and you won't be worried anymore. Also, for those who are extremely worried, here are some tips from me:

  • Mentally deprioritize your interview. When traveling abroad, make your brain believe that Google is not the main reason why you flew into this city, and the interview will get very light. I mean, treat it as you came here to see the city, make some great pictures possibly meeting friends and as a bonus, you were welcomed by Google :) This should vanish the pressure if you truly set it as another goal.
  • As mentioned above, simply do not put Google as the only goal in your life :) It is definitely not - live your own life in full today and never expect "this exciting fulfillment moment" to come somewhen in the future. You will get the recruiter's contact and you can come back to interviews in one year if you fail. Though, Google comes back to you if they saw any positive signs in the first round of interviews.

There are a lot of resources which will help you to harden your skills, but as for me, as for the software engineer, I found the next resources the most useful:

  • Leetcode.com - Pretty much everything you need. You need to train yourself to consistently solve medium-difficulty problems. Start with simple problems, and first make sure you consistently solve them (this takes time! It could be 2-3 months of daily practice easily).
  • Sort algorithmic problems from the lists by "most liked"! Think about interviewers picking problems for you. They will definitely pick something which isn't crazy or has a very narrow approach to solving it.
  • Practise telling. Approach the problems in multiple ways and tell your rubber duck (and soon your interviewer) what do you think. It's okay if you stuck - the recruiter will see that you are trying to approach it many ways and will suggest something closer to the solution for you.
  • Watch YouTube. It has a lot of great tutorials!

Team Match

If the interview were successful, you will have a couple of other interviews potentially with the managers of the teams you are joining. This is where you have no pressure at all - you just talk with those who saw your CV and are considering you to the role depending on your background. Mostly, they will tell you about the role, that's it!

Offer

Interviewing is quick, but what makes the whole process slow is getting the offer and finally landing in the office of your choice. Here it's even okay to tell your recruiter that you want to join in 2+ months! Obtaining visa might be a long process, mine took 3 months. And do not hesitate to negotiate your salary, if you have a reason for this (for example, if your current salary is higher). At this stage you are accepted, and you just talk about what makes you comfortable. You can easily screen which salaries apply to which positions on such resources as for example Glassdoor.

Good luck!

P.S. Warsaw is hiring! You can see the Warsaw's Google office from my story highlights in my instagram.