Cracking Google’s Software Engineer Interview: Facing 2D Dynamic Planning Challenges

google | Software Engineer | Interview Experience

Interview Date: September 26, 2025
Result: Not specified
Difficulty: Not specified

Interview Process

The interview consisted of two back-to-back sessions, each lasting 45 minutes, with a 30-minute break in between. The first interview focused on a 2D dynamic programming problem, which was adapted from LeetCode 1000, set in a context of stones and roof bricks. The interviewer was a senior engineer who appeared expressionless. Although I requested hints, I ultimately did not receive any follow-up questions.

The second interview centered around the zigzag iterator problem, derived from LeetCode 281, with a flower-themed background. The interviewer was a Chinese female who was more encouraging. This session included dry runs and edge case testing, with no follow-up questions. The second interview extended to an hour, allowing time for me to ask questions about Google.

Technical Questions

  • 2D Dynamic Programming problem (adapted from LeetCode 1000)
  • Zigzag Iterator (LeetCode 281)

Tips & Insights

It seems that the first interview was an edge case, as it’s uncommon for undergraduate intern tests to include a hard dynamic programming question. The focus of the review was primarily on basic data structures and graph theory. Although the two questions in the second interview were tagged with Google, they were both from six months ago. Good luck to everyone preparing for their interviews!