Interview Experience: L5, Google, Bangalore

Interview Experience: L5, Google, Bangalore


If you're enjoying the free content I share, why not take it a step further? Subscribe to Nerd Design Newsletter for a weekly dose of in-depth, well-researched articles, delivered right to your inbox!


Hi! I’ll be keeping this anonymous, but I recently fulfilled a long-time goal by joining the 谷歌 Cloud Databases team as a software engineer. Like many in tech, I’d always wanted to work at Google, so this role is truly a dream come true. Before Google, I spent seven years at 亚马逊 , where I learned a lot but also encountered a challenging work culture. When I was put on a PIP, it felt like the right time to look for opportunities with a better environment and comparable compensation. I went through a few interview processes and secured offers from Uber and Microsoft. But Google stood out as the place where I could make a meaningful impact while working with some of the brightest minds in tech. Here’s my detailed interview journey, from start to finish.


Application and Initial Steps

I applied for the role through a recruiter in March 2024. The initial conversations were smooth, and after a introductory calls, I received the invitation to begin the interview process.


Round 1: Data Structures and Algorithms

Focus: Post-order Tree Traversal, Topological Sorting

The first round kicked off with a DSA problem centered around trees. I was presented with a lengthy question in the code editor and took time to read it carefully. I asked several clarifying questions, which helped me gain a better understanding of the task.

Once I understood the problem, I proposed using a tree with post-order traversal. The interviewer requested that I explain my approach through an example before coding. I created a TreeNode class and organized my solution into modular components. I eventually completed the implementation, though I faced a bit of a time crunch.

Reflecting on it later, I realized a more efficient solution could have been achieved with topological sorting. Knowing this, I was a bit unsure about the outcome of this round.


Round 2: Data Structures and Algorithms

Focus: Tree Traversals

The second round came as a surprise with an extended 1-hour slot. The interviewer presented a problem spanning 4–5 pages with a corresponding diagram, which required managing a lot of information. The problem focused on n-children trees, a topic that tested my understanding of intricate tree structures.

With the help of clarifying questions, I spent around 20-25 minutes understanding the problem’s full scope. This problem was challenging due to its length and complexity, but I managed to complete the code. By the end, I felt both exhausted and confident that I had done well.


Round 3: Data Structures and Algorithms

Focus: Heaps, Recursion, Code Modularity

For this round, the interviewer presented a modified medium-level LeetCode problem, focusing on trees and recursion. I solved it quickly and coded a solution, including time and space complexity.

The interviewer then added follow-ups:

  1. Follow-up 1: With a small modification, they asked how I would adapt my code. I leveraged the Strategy Design Pattern to make it modular.
  2. Follow-up 2: This was a trickier problem extension, requiring an optimal approach. My earlier modifications helped me quickly adapt the code.
  3. Follow-up 3: A question around productionizing the solution. I shared a few scalable approaches, discussing how to ensure robustness in a real-world environment.

This round wrapped up well, and I felt positive about my performance.


Round 4: Additional Data Structures and Algorithms Round

Focus: Strings, Sorting, Binary Search, Trie

Due to mixed feedback the recruiter suggested an extra DSA round. This time, the problem required multiple DSA concepts, including sorting, binary search, and trie structures, as well as handling various corner cases.

After formulating an algorithm and discussing it with the interviewer, I implemented the solution with modularized code and tested edge cases. The follow-up questions required:

  1. Follow-up 1: Modification using a Trie to handle a new input.
  2. Follow-up 2: Discussing scalability with a large dataset. I explained the option of sharding the Trie and considered a key-value store approach.

The round went smoothly, with the interviewer indicating satisfaction with my performance.


Round 5: System Design

Focus: System Design, Scaling Backend Services

This round involved designing a Google product. I started by outlining functional and non-functional requirements, which I validated with the interviewer. We had a deep dive into specific design approaches, discussing the pros and cons of various options. This interview felt more like a collaborative conversation, and I appreciated the interactive nature. I was uncertain about the final outcome, but overall it was a rewarding experience.


Round 6: Googlyness and Behavioral Interview

Focus: Cultural Fit, Problem-solving Approach

In this round, we discussed my previous roles, including my experience at META, and explored the reasons behind my transition. The interviewer posed situational questions, and I shared my approach to tackling similar challenges in my past roles. This round felt more like a friendly conversation, with the interviewer offering support and guidance.


The Wait and Final Offer

After the interviews, the waiting period for feedback was long, as the hiring committee took time to reach a decision. The recruiter kept me updated, and after three weeks, I received the call—Google had extended an offer! The initial terms were in line with my expectations, so I accepted it without much negotiation.

Joining Google and Team Matching

The team-matching process involved several meetings with different managers. Eventually, I joined the Google Cloud Databases team, which aligned well with my interests. I officially joined on July 2024, marking the beginning of an exciting chapter.


Key Takeaways

  • Strong communication is a key success.
  • Strong understanding of data structures is essential; practice hard problems; tree-based questions were common.
  • Google emphasizes code quality and modularity over speed.
  • Follow-up questions on scalability and productionization are vital.

I’m thrilled to have achieved this milestone, and I look forward to the challenges ahead at Google, surrounded by a brilliant team.


Abhishek Saini

Lead Software Developer @ Tyroo? System Architecture & Microservices ? REST API ? AWS ? Problem Solver ? AI Enthusiast

2 个月

How come your interview experience is exactly the same with same questions and same answers as in this article published in 2023. https://medium.com/@rohitverma_87831/my-interview-experience-at-google-afc1080df175

回复

Ravi Singh What kind of google product they ask to design in HLD and LLD round.

Anushka chaudhary

Sophomore @ Integrated M.Tech (CSE, AI) '28 | Data Structures & Algorithms (C++) | Python| LLM Fine-tuning & RAGs | GenAI | Computer Vision | ML & DL Enthusiast

4 个月

amazing insights ??

MD INJAMAM HOSSAIN

SKILL ON || C || C++ || GO || Javascript || React || Node.js || DS || ALGORITHM || Python || HTML || CSS || Tailwind CSS || Bootstrap || MongoDB || PostgreSQL || MIKROTIK|| CCNA || Power Shell || Git || Github .

4 个月

Very informative

Annapurna Mishra

SWE Intern @ThinkExam | Max 3 Star @Codechef | Max Rating 1671 @Leetcode | 8*KYU @Atcoder | AIR 1970 Codekaze'24

4 个月

Seeing this post 2 hours before my Google Interview..

要查看或添加评论,请登录

Ravi Singh的更多文章