Company Introduction
Google’s process is one of the most transparent among major tech companies. It’s lengthy and can be stressful, but you rarely get ghosted or rejected for unclear reasons.
Application & Recruiter Outreach
Early February
I submitted three applications for Software Engineer, Early Career, via the Google Careers portal.Initial Outcome
All three were rejected after about a week. I’d previously applied via referral for other roles and was similarly rejected before any interviews.Surprise Outreach
Three days after those rejections, an external recruiter contacted me to discuss my background and aspirations. After a five-minute conversation, she felt I was a strong fit and scheduled my phone screen once I confirmed my preferred language and availability.
Interview Process
Round 1: Phone Screen
Preparation
I asked for three weeks to prepare; Google scheduled the screen in two. I re-reviewed the Neetcode 250 list and did mock interviews with two friends (one Google engineer, one Amazon engineer).-
Questions
- Introductions and background questions
- One “easy–medium” algorithmic problem (string manipulation plus basic data structures)
-
Approach: Use two pointers, moving from the beginning and end toward the middle. If the characters at both ends are not equal, try deleting one character on the left or right, then check if the remaining part is a palindrome. If either method can make it a palindrome, return
True
.
-
Approach: Use two pointers, moving from the beginning and end toward the middle. If the characters at both ends are not equal, try deleting one character on the left or right, then check if the remaining part is a palindrome. If either method can make it a palindrome, return
- One “medium” follow-up adding an extra data-structure requirement
Round 2: Technical 1
Question
A 2D dynamic-programming problem on a matrix with constraints. I recognized the DP pattern and used tabulation.Approach
Compress the two-dimensional state array into a stack and use data structures (such as balanced trees and monotonic queues) to accelerate state transitions. Also use recursion and caching to avoid redundant calculations.
Round 3: Technical 2
Question
An unbounded-knapsack-style DP hidden behind a creative problem statement.Approach
Consider the array being used, which reduces the space complexity, requiring only two rows. The optimized method is similar to the original DP approach, except thatdp
is changed to one row, and each time a current arraycurRow
is initialized. After updating the current array,dp
is overwritten, and the next row is updated.Follow-up
Design questions about operational optimization
Round 4: Googliness (Behavioral)
-
Questions
- Tell me about a time you had to handle a project that was late
- Tell me about how you work with difficult people/stakeholders
Approach
I did not prepare any case studies in advance. I used the STAR method on the spot to share real stories about my past experiences and the lessons I learned.
Round 5: Technical 3
Question
A variation on KMPApproach
Find the common prefix and suffix of the matching strings, and the position pointed to byj
is after the common prefix and suffix found.Follow-up
Asked to optimize. I discussed the double pointer method, but there was a problem with the code. I immediately discovered the edge case, but by then I had already been asked to stop coding.
Later Situation & Suggestions
The recruitment consultant reported that the feedback from the fifth round was mixed, and there was a risk of rejection by HC. HC then added another round of technical interviews, and I requested an extra week to review data structures and algorithms.
Key Advice:
- It is important to have a solid foundation of basic knowledge.
- Core data structures and algorithms (DSA) and system design skills are sufficient to handle the interview process.
- Use high-quality resources, such as Neetcode 250, for preparation.
Whether you are a beginner or an experienced developer, finding the right learning resources is crucial. Let ProgramHelp help you achieve a better professional future.
Top comments (0)