Google's Software Development Apprenticeship Rounds
Summary
I recently completed two rounds for Google's Software Development Apprenticeship program 2026. The interviews focused on DSA and 'Googlyness' questions, both of which I felt went well, and I am currently awaiting the results.
Full Experience
I recently completed two rounds for Google's Software Development Apprenticeship program 2026. After the recruiter reached out in early November, a 15-minute call explained that the process would involve two rounds: one on Data Structures & Algorithms (DSA) and another on 'Googlyness' questions.
In the first round, the interviewer presented a simplified version of the Cheapest Flights Within K Stops LeetCode question. The key difference was that my graph had no weights, and I simply needed to determine if the destination was reachable from the source. I came up with a DFS approach and implemented it. The interviewer seemed satisfied but then asked why I didn't opt for BFS. I explained that both solutions have the same worst-case time complexity, and DFS was my initial thought, though in hindsight, BFS would have been a more intuitive choice for reachability in an unweighted graph.
The second round, which happened today, featured a famous question detailed in this blog post. Fortunately, I had encountered this problem during my preparation, so I instantly knew the intended solution and its follow-up. I still took about 5-10 minutes to think and then explained my approach, which the recruiter seemed happy with. After implementing the solution, I explained that the average time complexity would be O(log M) and the worst-case O(M). The recruiter then pointed out that I was missing a crucial detail from the problem statement – it was a 'sparse bit array', meaning the number of 1s would never be the size of the array, a detail I hadn't initially considered.
Overall, I believe both interviews went well, and I'm now just waiting for the final result.
Interview Questions (2)
Preparation Tips
My preparation involved consistent practice of LeetCode problems. Crucially, I also spent time reviewing various interview experience blog posts and discussions, which proved beneficial as I encountered a familiar problem during my second interview round.