My Interview Experience With Google India
I got a notification on my phone “Opportunity @ Google”,I tapped on it and saw a message from Google Hr on Linkedin messaging.The message stated if I would like to explore an opportunity for Software developer role with Google India, my first thought was why would Google shortlist me for a software engineering role without me applying to google anytime in the past.It is a well known fact among software developers and technical interview forums that it is very difficult to get a call from Google unless if have an internal reference who would recommend you for a position in Google.Google does not hire aggressively in India for software engineering roles unlike Amazon and Microsoft.I checked the authenticity of the message,by visiting the Linkedin profile of the HR who contacted me,soon after the Linkedin message I got a mail from the same HR on my gmail about the same role,which was a bit more elaborate,how they have got my profile from Linkedin,and would like to schedule a 10 mins discussion about the role.At that point I still had no clue why Google would shortlist me without even seeing my resume,the only thing i know is they have seen my profile on Linkedin.My Linkedin profile says very little about my technical skills and projects I have done in my career,it has bunch of endorsements on programming languages I know,and a list of startups I have worked with.So I shared my resume with the HR and scheduled a 20 mins call one week later.
During my call with HR he explained why I was shortlisted for the role of software engineering role,the primary reason he mentioned why i was shortlisted because I had worked with lot early startups and they all were venture funded,which is true, 70% of my 6 yrs career, I have been involved with startups,I have helped these startups release their first android app , iOS app, revamped their entire Backend infrastructure,built features that accelerated the app installs and increased their daily transactions.I consider myself a full stack startup guy,my role primarily involves around engineering,but what excites me is seeing the product you have built grow and used by lots of users,so when you build lot of user facing features you start thinking about the product,along with the engineering part, you start thinking about the human side of it.My hardwork in those startups has helped me in google screening my resume I assume.
Google interview questions and your day to day engineering work has no correlation,it does not guarantee if good work done by you in your day job would mean clearing the google interview rounds.If you are an experienced guy and are out of touch in solving data structures and algorithms questions, it is very highly likely you would flunk Google interview.There is lot of debates and discussion in various platforms where people question the Google interview methodology, where the experience candidates are being judged in 45 mins window by asking a algorithm question,the famous one being a former apple engineer being asked to invert a binary tree https://news.ycombinator.com/item?id=9695102.
If you are a software engineer and have ever appeared for amazon or Microsoft ever you know the Google interview pattern and i was well aware of all of these, at the same time I was under prepared for these type of questions.I was not confident about my preparedness so I scheduled the first technical round once and rescheduled it again later, and the Google HR team was kind enough to accommodate my request.I will not be able to disclose the exact interview questions here due to confidentiality clause.During the telephonic round you should be prepared to write correct code with proper syntax handling all the edge cases with your preferred choice of programming language in a shared Google doc.I was able to clear the first round of telephonic round, but did not go through the next round.The interviewers are very polite and goes though the entire process in a very professional manner, they help you with lot of hints while coming up with the solution.
Preferred methodology for these type of companies to hire a candidate is asking algorithmic questions,it does not matter what technologies or frameworks you have used or how you have contributed in your pass organisations, the only thing that matters is coming up with the optimal solution for those two algorithm questions in 45 mins window, with best space and time complexity, O(nlogn) is never enough,O(n) it is.I am personally not very good at solving these type of questions,I actually suck at algorithm questions, I know my limitations very well, You can overcome these by practising at platforms like Hackerearth and Hackerrank in your free time,but then again personally I do not like to be in interview mode always, building software products for end users is more fun than spending time on Hackerrank.
I can understand the rational behind companies like Google and Amazon asking these questions for software engineering roles which needs to be solved in O(n) time, because the scale at which their solution needs to work.What I don’t understand is the new formed startups in Bangalore which are struggling to make even one user transact on their app filtering engineers solely on this criteria.When you are trying to build a company from scratch what you need is a guy with a lot of passion to build the product for you,an hacker who can ship the product quickly in the first few months,attitude over aptitude,who actually builds a product and does not stop there and follows it till it reaches the market.There are various stages a companies goes through early stage, growth stage and hyper growth stage.And I think each stages has its own set of challenges and requirements.I have been to one startup where interviewers had rote the solution before-hand and would not accept or understand any other solution.