How I got into Google

How I got into GooglePrajakta TathavadkarBlockedUnblockFollowFollowingJan 6The 2 month journey to my dream companySomewhere in my mind I knew that I had to try because getting into Google was not impossible.

I would have never known the outcome until I tried, kind of like the Schrödinger’s cat, and that thought made me uneasy.

Like many other techies out there, Google has been my dream company right from the beginning.

When I cleared the Google interview this time, many of my friends reached out to me for tips and guidance for their upcoming interviews.

During these conversations I started identifying patterns and felt like it might be worth documenting these since I know the struggle of interviewing in and out by now.

Its a tough process and can get a bit strenuous at times specially if you are working a full time job.

A lot of articles on the internet have helped me during my preparation and this is one way of me giving back to the developer community.

Hope this helps!Fun fact, I tried to crack the Google interview once before this in 2014 and failed.

One interview on that day was so bad that I went completely blank and simply ended up having a discussion with my interviewer :DMotivationDuring my 3.

5 yrs long career as a software engineer, I worked at a startup along with a couple of fintech companies.

Each experience has taught me tons and I would say that the knowledge I gained at each step has made my journey into Google easier as compared to me interviewing as a new grad.

This time when I decided to look for my next opportunity, I had clarity about one thing in my mind.

I wanted to really take my time to prepare for my next big gig and not settle for anything lesser.

Although I was interviewing for some of the biggest tech giants in the industry, honestly, I never had even 1% hope of getting into Google, since it was known to be one of the toughest software engineering interviews in the industry.

But somewhere in my mind I knew that I had to try because getting into Google was not impossible.

I would have never known the outcome until I tried, kind of like the Schrödinger’s cat, and that thought made me uneasy.

Reading about the company and preparing specifically for it is generally the most ignored section by candidates and all I can say is, it is one of those sections that can really set you apart from others.

Identifying the elements of an interviewIn my experience, any interview preparation involves mastering 5 important things.

Coding, design, language specific concepts, previous projects and resume and last but not the least company specific reading.

CodingAll of the companies that I have interviewed for in my career have had at least 2 rounds of pure algorithmic questions where you are given a problem and you need to come up with a solution and code for it.

e.

g.

Write code for printing the numbers 1 to 10 on the console.

(Of course this is just an example 😀 )I have elaborated this section specifically in lot more detail in the rest of the article.

DesignDepending on the level I was interviewing for, some companies have had 1 round of design questions where you are given a rather abstract system and you are required to come up with a design for that system.

e.

g.

If you were to build a social networking website from scratch, how would you design the system?For the next 3 sections, some companies will have 1 dedicated round for them while some others might combine it with some other sections like coding or design.

Working knowledge of the preferred languageFor most interviews, you are expected to provide the company with a language you are most comfortable with.

You are expected to know the basics of this language in most cases apart from coding ability.

Some companies might ask you about the basics while some might just dive deep into one area.

e.

g.

What is inheritance in Java?Previous projects/ResumeThis is one of those sections that I have sometimes completely forgotten to prepare for, since I was completely focused on getting the other sections like coding and design right, but interviewing is not just about coding! Its about proving yourself to be a potential teammate.

This involves you explaining to them how you have collaborated with others in your past projects.

The questions for this section could be either something specific, like a skill on your resume or about a project.

e.

g.

Could you tell me a little bit about the project you are most proud of?Company knowledge/curiosityReading about the company and preparing specifically for it is generally the most ignored section by candidates and all I can say is, it is one of those sections that can really set you apart from others.

You may or may not be directly asked questions about it but this reading is going to help you prepare so much better for the sections above.

If you are reading this article because you want to do well in some upcoming interview, you are already in the right direction.

e.

g.

So why did you choose XYZ as your next endeavor?YouTube was my friend during the preparation.

Not just for learning but also for entertainment.

I never imagined in my wildest dreams that within a period of 2 months I would be on the other side working for YT! Miracles do happen :)Preparing for the interviewI prepared for the interviews from all sorts of different places and I will be listing each one of them down with the specific area that they helped me in.

Udemy coursesI remember starting my preparation by buying 3 courses on Udemy.

These courses helped me get my basics clear.

Note: I never completed all these courses but completed a majority portion of it.

Also, I chose to take these courses since I personally grasp things much faster and better in the form of a video as compared to text.

Plus it is far better when someone explains things to you instead of you trying to understand them all by yourself.

I had not interviewed in a while and thus these courses also helped in dusting the rust by making me do the coding exercises embedded into the lectures.

Data Structure and Algorithm Analysis: To understand how to implement data structures from scratch.

Java Programming Masterclass for Software Developers: For Java programming basics.

Software Engineering Interview Unleashed: Understanding the complete interview process for Google with some live sessions.

Leetcode premiumMost interviews for the tech giants for my level were completely coding/algorithms oriented since I did not have a lot of experience in the industry just yet.

Leetcode premium was the best thing that could have happened to me then.

It costed me 35$/month but those 70 bucks were worth every penny.

Leetcode is the only resource I used to practice coding and I would highly recommend it to anyone who is trying to get into the tech giants.

Coding preparation is deep and vast and thus I have dedicated 1 full section to it later in the article named “My 1 month strong technical preparation” where I explain how I utilized this resource to the fullest along with some of the mistakes that I did.

YouTube videosYouTube was my friend during the preparation.

Not just for learning but also for entertainment.

I had never imagined that within a period of 2 months I would be on the other side working for YT! Miracles do happen :)The idea here was to watch videos for any concept that you might find difficult to understand or which you may have understood only partially.

I am just going to embed some videos which helped me the most and were game changers for me.

But there were numerous other videos which I used to watch just while browsing to get information.

You never know which small piece of information might help you where.

Other resourcesIf you have not done this already, some resources from Gayle Laakmann McDowell:Cracking the coding interviewStep by step approach to crack the interview: (Super useful chart)Preparing for design interviews:Hired in tech courseSystem design interview playlist by Ramon Lopez:I started my intensive coding preparation 1 month before the onsite interview and ended up solving around 60–70 questions and that was all that was needed for cracking the interviews.

The trick lies in mastering the CS fundamentals underneath.

My 1 month strong technical preparationUnderstanding LeetcodeLeetcode premium is a website where you can code and run programming questions which are similar to what are asked in interviews.

Note: None of the questions that were asked to me in the Google interview could be found anywhere on the internet but the underlying concepts are still the same.

Thus it is all about mastering the art of problem solving, identifying patterns and practicing for it.

Leetcode premium has 4 notable sections:EasyMediumHardCompany specificEach category again has multiple sub categories:ArraysStringsLinked ListBacktrackingSearching/SortingTreesGraphsMath (Probability etc.

)The planI started my intensive coding preparation 1 month before the onsite interview and ended up solving around 60–70 questions and that was all that was needed for cracking the interviews.

The trick lies in mastering the CS fundamentals underneath.

Solve 2 problems everyday if not more.

Easy problems can vary and might take anywhere from 30 mins to an hour.

Medium problems were actually hard for me (sometimes even easy were hard).

Time box your medium problem solving duration to 1 hour.

At the end of 15 mins if you do not know the solution, look it up and try to implement.

At the end of an hour if your solution is not working or cannot make some test cases pass, just stop and look at the solution.

This is a rough plan below but feel free to mix it up a little to avoid for the preparation to get monotonous.

Complete arrays and strings EASY (5 days) to gain some confidence.

Everyday do 1 medium of arrays OR strings along with 1 easy of linked list or backtracking.

Do trees easy and graphs.

Do sorting & searching.

Do other remaining questions.

I concentrated my preparation on mastering most of the easy and medium questions and did less than 10 questions from hard.

If I was not understanding a particular solution, I would simply search YouTube to try and find someone who might have explained the solution.

Backtracking was one such area which I used to struggle with.

1 mistake I wish I could take backLeetcode premium has a section with company specific questions.

i.

e.

There is a set of questions for Google, Facebook, etc.

The biggest mistake that I did was to start preparing with the questions for Google.

Those questions were extremely hard and resulted in me getting demotivated and ending up with me doing nothing at all.

Make sure you start with the easy questions first and then move on to the medium and hard ones.

My favorite features of Leetcode premiumThese are my top 3 favorites:Running a variety of test cases against your solutionGenerating a graph which lets you compare your runtime with that of other premium users.

Looking at a sample solution with the best runtime which was submitted by a fellow leetcode user.

I used to think to myself, “What will happen if I don’t get into Google?” and the answer was “Its fine, I have a backup plan.

I will try for the next set of top companies and keep on trying till I get what I want.

” This really calmed me down and made me perform better.

General tipsDo not stress yourself.

I was living my life as well as giving my 100% to my current company while preparing for the interviews.

Dedicate less amount of time everyday but do it consistently for a month or two and make those few hours each day productive.

Weekends are your best friends!.Utilize them the most.

I personally had 1 “power weekend” as I call it where I completed almost all question of leetcode easy and some of medium.

That really gave me a boost I feel.

The recruiter is your friend too!.Before any interview, feel free to ask the recruiter for the format of the interview, expectations, preparation material, general tips, etc.

This will really help you focus your attention to specific things because otherwise CS is a vast area to tackle.

Start with the general preparation first i.

e.

taking Udemy courses, YouTube videos, reading articles, etc.

Keep the leetcode part to the very end since you will be most effective in your interview if you have coded similar questions recently (within a span of 1 month or so).

Do not dedicate a complete week just to coding is what I suggest.

Mix it up a little bit.

Do some design from time to time.

Watch some videos in the middle.

Start enjoying the process of learning!For Google specifically, 1 thing which helped me was asking the recruiter to provide me with a Chromebook to code since white boarding can usually get messy for me.

The idea was to use the whiteboard to work through the solution and visualize with the interviewer and then finally use the Chromebook to code.

Many companies are encouraging this nowadays, you won’t know until you ask for it!Sometimes just random net surfing helps.

I used to pull up articles of how people cracked their interviews and it helped me on many levels.

Always think of the worst case scenario.

I used to think to myself, “What will happen if I don’t get into Google?” and the answer was “Its fine, I have a backup plan.

I will try for the next set of top companies and keep on trying till I get what I want.

” This really calmed me down and made me perform better.

Stay in touch (find my LinkedIn below) and more importantly,Keep calm and code on.

Prajakta Tathavadkar – Software Engineer – Google | LinkedInView Prajakta Tathavadkar's profile on LinkedIn, the world's largest professional community.

Prajakta has 6 jobs listed…www.

linkedin.

comIf you found this useful, click the clap hands icon below which would make it easier for others to find this article and make use of it.

Feel free to put your suggestions/comments in the sections below.

.

. More details

Leave a Reply