- Published on
Google | L4 | Bangalore | Jan 2024 [Offer]
- Author
- Shared Anonymously
[reposting without external links]
Status: Senior Software Engineer in a product-based company
Experience : 3.5 years
Graduated: 2020
Location: Bangalore
Interview process: Aug 2023 - Jan 2024 (5 months)
Little background about myself: I am not from IITs or NITs and have never done competitive coding before. Back in my college days, had a mindset that MAANG FAANGs are for ultra-brilliant people and not for us to dream, but, Math, Aptitude, problem-solving were my strengths since the beginning. Things changed when my peers working in the same company cleared good companies like Atlassian, Amazon, and Salesforce - and gave me a sense of feeling that it is not impossible. My partner also played a huge role from teaching me to dream big - constantly assuring me that I will do it - to actually doing it.
It all started when a recruiter reached out in Oct 2022 for an L3 role, I took the screening round though I had only hardly solved around 50 easy and medium Leetcode problems
Screening 1 : https://leetcode.com/discuss/interview-question/2056758/google-phone-interview-if-circles-are-from-single-circle-group
I struggled but was able to talk about union find kind of approach without actually knowing what it was. wrote partial, non-working, bug-filled code, was able to explain the approach properly. had lost hope. The recruiter reached out saying I had cleared the screening. but further rounds were not set up due to the hiring freeze.
Another recruiter reached out in June 2023 - had done around 250 problems at this time but had lost touch. asked some time and took a second screening around mid-August 2023
Screening 2: Hashmap, Hashset, and array-related problem (did not find the question on the internet)
was able to solve the problem with bug-free, clean concise code
also solved the follow-up question with code and we still had around 5 mins left. It went perfectly.
Verdict: Strong Hire, cleared
The next set of 3 rounds happened around August end 2023, consecutive days. Had solved around 500 problems by then.
Round 1 : stack overflow /questions/68684164/find-if-array-can-be-divided-into-two-subarrays-of-equal-sum-if-any-one-element
The interviewer did not paste the problem in the editor, I misunderstood the problem and wasted 30-35 mins solving the wrong problem. The interviewer didn't mention I misunderstood - rather - kept asking why the solution wouldn't work. once I realized - thank god - the solution popped into my head - explained the approach quickly - coded it and mentioned the time and space complexity.
I guess I was expected to solve another problem since the above is an easy medium problem and the code is pretty straightforward.
Round 2 : https://leetcode.com/discuss/interview-question/1739888/google-phone-screen-sde
This round went excellent. I solved the first problem and solved 2 follow-up problems and still had around 5 mins left.
Round 3 : https://leetcode.com/discuss/interview-question/2197482/Google-onsite-interview-question
This round also went great. was able to write clean and concise code. took little time for follow-up related to optimization, but was able to finish well on time
Dont know the exact verdict of interview rounds since the recruiter didn't mention individual feedback.
I had a team match call before Googlyness round. I had no idea how to talk on such calls and therefore it didn't go well.
My Googlyness Round happened in mid-September 2023
Googleyness and Leadership :
This went very bad for me compared to all. People say it's chill, no preparation needed, just be friendly, don't be evil etc etc.
But it didn't work out for me.
Too bad that I hadn't taken any such interviews before
Some things that helped me and some things I learned:
- Patience Patience and Patience
- Your state of mind and calmness level matter a lot during the interview - I used to practice yoga often and compulsory on the interview day - helped keep me calm and focused
- Please ask the interviewer to paste the question if they did not - so that you don't miss out on details.
- Behavioural rounds: DON'T take it lightly. Learn how to sugarcoat and talk about your past experience and learn the keywords to sound confident. Simple changes of words can make a huge impact on how you sound. Jot down all the past experiences and learn how to make a story out of it which sounds "fancy".
- Be consistent with practice. Read the top 3 solutions even though you solved it yourself.
- The people involved and the environment play a huge role in your success.
- When you are prepared - even a hard problem seems easy. When you aren't prepared - even an easy question seems hard.
- you can do it if you believe you can do it!!
How I prepared
-
I mainly followed neetcode.io since I loved the way he teaches. (felt very proud to learn that he was Indian). I started with easy problems and only moved to medium problems when I was able to comfortably solve easy problems
-
The problems I was not able to solve by myself would go to to-do list to revisit a month or two later
-
Once you solve medium problem - solving related hard problem will be a lot easier.
-
After I finished neetcode 350 problems topicwise
-
better to pick famous problems than random problems since famous problems will have trickiness in it which you might not find in randomly selected problem.
-
once you have completed all topics/categories of problems - pick random problems instead of categories - since picking a problem already knowing which category it belongs to might not help you think by yourself
-
Aditya Verma DP playlist - watch the main concept and solve the related problems yourself before watching his videos.
-
go to g f g /competitive-programming-a-complete-guide/ - read almost all articles in this
-
Revised neetcode 150 twice or thrice before the actual interviews
Leetcode community helped me a lot and this post is an effort to give back to the community. Happy to answer any questions.
Compensation: https://leetcode.com/discuss/compensation/4658710/google-l4-bangalore/2239843