Google Software Engineer Interview Experience — L4 Virtual Onsite, 12 Minutes of Coding on a Vague String-Templating Question

Google·Software Engineer·Aug 2026
OnsiteRejectedmedium

First round VO, coding — the interviewer gave me this question: given a KV map and a string where keys are marked as indices, replace the parts of the string wrapped in %% with the corresponding value from the KV map: {USER=>admin, HOME=>/%USER%/home}
Input: I am %USER% My home is %HOME%
Output: I am admin My home is /admin/home

Then he had me come up with edge cases. My first thought was: if we get %%x%, I'd just ignore the extra % and keep only one %. He didn't think that was great. Then he asked what if the user wants to output a literal %. I said maybe %%% could represent outputting a %. He wouldn't say whether that was right or wrong, just noncommittal. Then I said, what about the nested case %%X%%? Should we look up X first, turn it into %(VALUE OF X)%, and then look up the value of X again? He was noncommittal about that one too. Then he asked what if a value string in the KV map itself contains %X%. I said we could flatten the KV map first. He said okay, start writing then (at this point we'd been discussing for a while and he still hadn't told me how he wanted the two edge cases I raised handled — there were 12 minutes left). And at that point he still hadn't said how %%% and %%X%% should be handled, so I just had to bite the bullet and write the version I had in mind: start appending to the output from the first % up to the next %. I got about halfway through with five minutes left when he followed up again: what if there's a cyclic dependency in the KV map (topological sort)? I said count the indegree and then traverse. He asked what kind of traversal. I said a queue. Then time was up and he turned it around to ask if I had questions for him.

Summary: I couldn't tell what he was actually trying to test. We just kept burning time discussing things, and he never told me what he thought the right approach was. This was originally an easy question, and the follow-up was medium at most. Maybe he just wanted to fail me, or more likely, the edge cases I raised weren't in his script for this problem and he didn't actually know how to handle them either, lol. (There were also five or six minutes of questions at the start — why do you like Java, etc.)

How it felt: Rough. Especially since I was grinding LeetCode while working full time — 230 problems in two and a half weeks — and it came down to just twelve minutes of actual coding. This interview felt like a joke. The interviewer never actually defined what he wanted to test. Every time I proposed a way to handle something, all he'd say was "up to me." I've interviewed at a lot of companies and this is the first time I've run into something like this.

Timeline: Applied last September, got picked up this July. Nobody showed up for the first VO. This was the rescheduled VO — I got the fail three days later.

PS: That said, I really appreciated the interviewer for the BQ round. Even though the coding round left me feeling like garbage, the BQ round actually felt pretty good.

Published

Curated and edited by PracHub

Practice the questions from this interview

Discussion

Sign in to join the discussion. The author is notified of every comment.

Loading comments…

Interview at a glance

Company
Google
Role
Software Engineer
Rounds
Onsite
Outcome
Rejected
Difficulty
medium
Interview date
Aug 2026
Questions from this interview
1 question

Real Google interview experiences

First-hand reports from Google candidates — the rounds, the questions they were asked, and how it went.

All 127 Google interview experiences