Google Munich Software Developer Interview Experience
Google Recruiter contacted me on Gmail, and asked me whether i am interested to apply for Software Developer Level 3 Role at Munich, Germany on the basis of my competitive programming as well as Github Profile.
Who, says no to Google, so i thought that lets give it a try 😉
Note: No matter whether it is Munich, Zurich, or Hyd or Bangl, or Gurugram, the interview process is same for all.
Note: I cannot share the questions because it was clearly mentioned not to share interview questions 🙁
Round 1: First there is a brief call of about 20-25 minutes approx with Google Recruiter which asks me about my skills and about graduation degree and what i am doing right now. After
After that he jump into DS and Algo, and asked me Time Complexities of Some most famous Data Structures and Algorithms, and he also asks a question on trees as well.
Later he asks whether i know something about how to test the code and regarding the corner cases of a program.
So, it is general round in which theoretical aspects of Data Structures and Algorithms are tested.
Then later he scheduled the next interview date.
After interview ends, he give me some preparation materials links on my gmail itself.
Round 2: It was telephonic coding round, in which the interviewer give me a question and then first i have to provide the approach of it and then later i have to write its code in google doc.
Again i cannot share the question, but that question was on arrays and it was kind of Easy to Medium question. First i told him brute force, then he told me to optimize it. Later i provide the optimized approach and then he allowed me to write the code.
So, this round lasts for about 45 minutes and lastly i asked the interviewer that in which team he is working.
Now, depending on your performance in telephonic interview, if they are satisfied then they may cal you onsite, and if they are not then they may take 1 more telephonic interview.
Now, after this the next 5 rounds are going to be Onsite Round.
Onsite Round 1 & 2: First 2 are technical Programming interviews based on DS and Algo taken by Software Engineers or mid level software engineers also some mathematics part also asked which involved some Permutation or Combination in solving your solving and yes you will be questioned on your projects also, not so deep but an overview and little bit insight of it.
Onsite Round 3: 3rd interview is Lunch interview which is nothing but a behavioural talk, in which the interviewer will take you to the lunch and you can ask anything to him, and this round score is not counted in the overall interview score.
Onsite Round 4 & 5: Then after lunch there are 2 more interviews, those too are related to DS, Algo taken by senior engineers or product managers.
Note: Always use sensible variables as well as function names, which usually makes some sense, like if you have to find out the Nth fibonacci number then use Nth_fibbonacci as the name of your function, similarly if you want to find out the second largest element, then use secondLargest or something related to it, which makes some sense, and always debug your code on corner cases as well as base case(if recursion is used) and see properly that whether your function signature is correct, whether you are returning correct value from that function or not, because the code you write goes to higher authorities also.
So, all in all, all the interviews are related to DS Algo, and Mathematical Logic also.
Overall it was a smooth and very interesting process and interviewers are also very friendly and give you detailed reason at every point of time.
In the end if you rejected then you will get detailed report about your weak areas where you needs improvement.
Note: Always think loud in interviews and tell your approach to interviewer also, because in the end interview is nothing but a formal discussion/communication between 2 persons, which can’t be done just by 1 side, so involvement of both the persons require in order to make it a good communication.
I am providing some useful resources to practice data structures and Algorithms as well as Company questions and mock interviews.
Getting an interview call from any of the FAANG(Facebook, Apple, Amazon, Netflix, Google) companies, is not an easy task, until or unless you are from a tier 1 college.
But, if you are from a Tire 3 college then you have to showcase your skills publicly, that’s the only way you can highlight yourself.
For Software Engineer Role, these companies require those candidates who have excellent Data structures and algorithmic skills, and can solve problems in an efficient space and time constraint.
So, in order to showcase your skills publicly you should practice on online judges like Codechef, Codeforces, Leetcode, Hackerrank, Topcoder, Uva OJ…. there are many online judges, but mostly stick with Codechef, Codeforces and Leetcode and if you are beginner then start with Hackerrank and then move on those other platforms. Apart from these, you should also put your code or projects on Github.
Github and Online Judges are the only ways in which you can showcase your talent publicly. Apart from these you can also apply for job on the companies website or approach for referrals via Linkedin.
Also, google doesn’t discriminate on the basis of graduation degree or college because, google is not a college centric company, anyone can join google, no matter whether he/she is from tier1 or tier 3, or even graduated or not. Google has their own competitions like Kickstart and Codejam, if you perform well in those then you might get chance to get interviewed at Google.
So, just keep practicing Data Structures and Algorithms and do regular practice on Online Judges like Codechef, Codeforces, etc.., and keep applying or approach for referrals.
GeeksforGeeks – No doubt, one stop Portal for every geek, having tons of questions.
At the end only skill matters that how well you are in DS/Algo and nothing else, not even your college or your degree.
All the best 🙂