issue 117apr 27mmxxvi
est. 2017
Sun, 27 Apr 2026
vol. IX · no. 117
PapersAdda
placement intelligence, since 2017
640+ briefs · 24 campuses · by reservation
verified offers · sourced from r/developersIndia
razorpay₹65.00 LPA· iit-d · sde-1google₹54.00 LPA· iiit-h · swe-imicrosoft₹49.50 LPA· iit-b · sdeatlassian₹38.00 LPA· nit-w · sde-1amazon₹44.20 LPA· bits-p · sde-1uber₹42.00 LPA· iit-kgp · sde-1razorpay₹65.00 LPA· iit-d · sde-1google₹54.00 LPA· iiit-h · swe-imicrosoft₹49.50 LPA· iit-b · sdeatlassian₹38.00 LPA· nit-w · sde-1amazon₹44.20 LPA· bits-p · sde-1uber₹42.00 LPA· iit-kgp · sde-1
section: Interview Questions / brief
08 May 2026
placement brief / Interview Questions / brief / 08 May 2026

Google L4 Bangalore April 2025: Topological Sort, Log Filtering, Line Sweep, Then 12-Month Cooldown

TL;DR. SDE-II candidate, Bangalore, April 2025 cycle. Four rounds: topological sorting with BFS, log message filtering with two follow-ups on memory...

Aditya Sharma
Aditya's Edit

PapersAdda 2026 Placement Cycle

By Aditya Sharma·Founder & Editor, PapersAdda

What changed in 2026 drives

Mass-recruiter offer letters are flatter for 2026 batch - the 4-5 LPA ASE band has barely budged in three years while inflation eats real wages. Premium tracks (Digital, Pro, Elite, Specialist) are still where the differential lives, and they are entirely test-driven. If you are aiming higher than the default offer, the coding round is not optional pageantry - it is the entire interview.

What I'd actually study for this

  • 01Two solid coding-round answers (1 medium-hard DSA each, with edge-case discussion) > five half-baked ones
  • 02One real project you can defend end-to-end - file paths, design decisions, and what you would change
  • 03One DBMS schema you actually built (not a textbook ER diagram), with at least 3 join-heavy queries written from memory
  • 04Three behavioural STAR stories: failure recovered, conflict handled, ownership taken

Where most candidates trip up

The single biggest mistake is treating company-specific guides as primary prep and DSA as secondary. It is the opposite. Mass recruiters use the test as a filter, but premium tracks at every IT services company use coding to allocate offer band. Spend 70% of prep time on DSA + system fundamentals, 20% on company-specific patterns, 10% on HR rehearsal. Reverse that ratio and you collect the default offer.

Editorial commentary by Aditya Sharma · written for PapersAdda · not generated, not aggregated.

TL;DR. SDE-II candidate, Bangalore, April 2025 cycle. Four rounds: topological sorting with BFS, log message filtering with two follow-ups on memory optimization and bidirectional time windows, line sweep on intervals with a missed duplicates edge case, and a Googlyness behavioral that the interviewer called "super impressed." Still rejected. 12-month cooldown imposed. No detailed feedback given. The candidate's advice after the loop: always walk through your code unprompted, always ask about duplicates even if the problem does not mention them, and prepare 4 distinct STAR stories because 2 rotated stories will not survive a 45-minute behavioral round.

This is not a generic Google interview prep article. This is one candidate's specific April 2025 L4 loop at the Bangalore office, with the exact questions, the exact follow-up chains, and the exact outcome. If you are preparing for Google India in 2025 or 2026, the follow-up patterns here are more useful than any list of "top 50 Google questions."


The candidate

FieldValue
Role applied forSDE-II (Google L4), Bangalore
Interview cycleApril 2025
Total rounds4 (3 technical + 1 Googlyness)
Round scheduling issuesMultiple reschedules across rounds
OutcomeRejection, 12-month cooldown
Feedback providedNone (standard Google policy)
SourceVerified post on InterviewExperiences.in

The candidate does not disclose their current company or years of experience, but the L4 targeting and the SDE-II designation indicate 3 to 6 years of industry experience, consistent with Google's L4 band expectations in India.


Round 1: Topological Sorting + BFS

ElementDetail
TopicTopological sorting on a directed graph
DifficultyMedium
PerformanceSolved and coded successfully
Interviewer behaviorAppeared unengaged: yawning, camera issues
OutcomePassed

The first round presented a straightforward topological sorting problem requiring BFS traversal. The candidate identified the pattern, implemented it correctly, and finished with time to spare.

The notable detail is the interviewer's behavior. The candidate reports that the interviewer appeared disengaged throughout the round: yawning, having camera issues, and not actively participating in the discussion. This is uncomfortable but irrelevant to the outcome. Google interviewers submit structured feedback forms. Whether they seemed interested during the round does not correlate with the feedback they write afterward. A bored interviewer who writes "Strong Hire" counts the same as an enthusiastic one.

That said, an apparently disengaged interviewer makes it harder for the candidate to calibrate their performance in real time. You cannot read body language signals to know if you should explain more, code faster, or pivot approaches. The only defense: treat every round as if the interviewer is giving you nothing, and over-communicate your thought process regardless of their reactions.

The actual problem pattern. Topological sort on a directed acyclic graph. Standard approach: compute in-degrees for all nodes, seed a queue with nodes having zero in-degree, process BFS layer by layer, decrement neighbor in-degrees as you remove each node. If the final processed count does not equal the total node count, the graph has a cycle and no valid topological order exists.

This is a warm-up question at L4. Google expects you to solve this in 15 to 20 minutes, leaving the remaining time for a follow-up (cycle detection, lexicographically smallest order, or parallel scheduling). The candidate does not mention a follow-up, which suggests the round closed after the base solution.


Round 2: Log Message Filtering with Two Follow-Ups

ElementDetail
TopicString processing, data structures, time-window filtering
Base questionFilter log messages: print only if not seen in last 10 seconds
Follow-up 1Memory optimization for unique messages
Follow-up 2Print only if message absent in previous AND next 10 seconds
PerformanceStrong on base + follow-up 1, struggled on follow-up 2
OutcomeMixed signal

This is the round that likely determined the committee outcome. The base question and the first follow-up were handled well. The second follow-up broke the candidate.

Base question. Given a stream of log messages with timestamps, print a message only if the same message has not been seen in the last 10 seconds. The candidate used a map<string, int> to track the most recent timestamp for each message. When a new message arrives, check the map: if the message exists and the timestamp difference is less than 10 seconds, suppress it. Otherwise, print and update the map.

This is clean and correct. Time complexity is O(1) per message for lookup and update. Space complexity is O(unique messages).

Follow-up 1: memory optimization. The interviewer asked: what if the number of unique messages grows indefinitely? The candidate proposed a queue plus map cleanup approach. Maintain a queue of (message, timestamp) entries in arrival order. Periodically (or on each new message), evict entries from the front of the queue where the timestamp is older than 10 seconds. When evicting, check if the map entry for that message still points to the evicted timestamp; if so, remove it from the map.

This is the standard sliding-window cleanup pattern. The queue gives you O(1) eviction at the front, and the map check prevents removing entries that have been refreshed by a newer occurrence.

Follow-up 2: bidirectional time window. Print a message only if it has not appeared in the previous 10 seconds AND will not appear in the next 10 seconds. This is the hard variant. The candidate struggled with this despite hints from the interviewer. They solved it after the interview ended, which does not count.

The difficulty here is that you need future knowledge. In a streaming context, you cannot know what the next 10 seconds will bring. The standard approach is to buffer messages for 10 seconds before deciding whether to print them. When a message arrives at time T, add it to a buffer. At time T+10, check if the same message appeared in the window (T, T+10]. If not, print the buffered message. This requires a delayed-output architecture that most candidates do not consider because they are locked into the "process and print immediately" mental model.

The interviewer gave hints, and the candidate still could not arrive at the buffered-output approach during the round. At L4, an unsolved follow-up with hints is a "No Hire" or "Lean No Hire" signal on that round. The base question and first follow-up were not enough to compensate.


Round 3: Line Sweep on Intervals

ElementDetail
TopicInterval processing using line sweep algorithm
DifficultyMedium
PerformanceSatisfied interviewer but missed edge case discussion
Key lesson from candidate"Always consider duplicates, even if not explicitly mentioned"
OutcomeBorderline positive

The third round presented an interval processing problem requiring a line sweep (also called sweep line) approach. Sort interval endpoints, sweep left to right, track active intervals at each point.

The candidate solved the problem and satisfied the interviewer on the main solution. But they missed discussing duplicate handling. The candidate's own takeaway: "Always consider duplicates, even if not explicitly mentioned."

This is a recurring pattern at Google. Interviewers deliberately omit edge cases from the problem statement to test whether the candidate asks about them proactively. "What happens if two intervals share the same start point?" "What if an interval's start equals another interval's end?" "Are the endpoints inclusive or exclusive?" These are not trick questions. They are the actual production-level concerns that distinguish an L4 engineer from an L3 engineer.

At L4, Google expects you to identify 2 to 3 edge cases unprompted. If you only handle the happy path and the interviewer has to prompt you to think about duplicates, you are demonstrating L3-level completeness, not L4. The candidate recognized this in retrospect.

Line sweep implementation notes. Create a list of events: each interval generates two events (start, end). Sort events by position. For tie-breaking: if a start and end share the same position, the order depends on whether intervals are open or closed. Sweep through events, maintaining a counter of active intervals. The output depends on the specific question (maximum overlap count, merged intervals, free gaps, etc.).


Round 4: Googlyness Assessment

ElementDetail
TopicBehavioral / Cultural fit
FormatSTAR-based behavioral questions
Preparation4 distinct STAR pattern stories
Interviewer reaction"Super impressed"
SchedulingPostponed four times before it happened
OutcomeStrong positive

The Googlyness round went well. The candidate prepared 4 distinct STAR stories, each covering a different behavioral dimension, and the interviewer was "super impressed." This is the best possible signal from a behavioral round at Google.

Four postponements on this single round is extreme. The candidate persisted through each reschedule, which demonstrates the logistical patience required for Google's process. Each postponement resets preparation energy and creates anxiety about whether the loop is being silently cancelled.

Despite the strong Googlyness performance, the overall outcome was rejection. This confirms what every Google candidate needs to understand: a perfect behavioral round does not save mixed technical rounds. The committee weighs technical signal more heavily than Googlyness at L4. One strong behavioral round plus one unsolved follow-up plus one missed edge case discussion equals "not enough signal for L4."


The Rejection: No Feedback, 12-Month Cooldown

The candidate received a rejection without detailed feedback. The recruiter indicated willingness to reconnect after the 12-month cooldown period.

Google's 12-month cooldown is standard for candidates who complete a full loop and are rejected. It is not punitive. It is structural: the hiring committee determined that the candidate needs more time to reach L4 level, and 12 months is the minimum window Google considers sufficient for meaningful skill growth.

During the cooldown, the candidate can interview at other companies, build system design depth, and re-apply after the period expires. The recruiter's offer to reconnect is genuine; Google maintains candidate profiles and re-engages after cooldowns if the candidate reaches out.


The 6 Questions That Appeared in This Loop

#RoundQuestionTopicFollow-ups
1R1Topological sort on directed graphGraph / BFSNone mentioned
2R2Filter log messages: suppress if seen in last 10 secondsString / HashMapYes, 2 follow-ups
3R2 FU1Memory optimization: evict stale entries from the mapQueue + Map cleanupPart of chain
4R2 FU2Bidirectional: suppress if seen in past 10s OR next 10sBuffered output / delayed decisionUnsolved during round
5R3Line sweep on intervalsSorting / Sweep LineEdge case on duplicates
6R4STAR behavioral stories on cultural attributesBehavioralNone

The follow-up chain in Round 2 is the most instructive. Google's coding rounds at L4 are not "solve 2 independent problems." They are "solve 1 problem, then extend it twice." The base question tests competence. Follow-up 1 tests optimization awareness. Follow-up 2 tests architectural thinking (can you redesign the solution's output model when the constraints change fundamentally?).

If you are preparing for Google L4, practice follow-up chains, not isolated problems. Take any LeetCode medium, solve it, then ask yourself: "What if the input is infinite (streaming)?" "What if memory is bounded?" "What if the output has a delay requirement?" These self-imposed follow-ups simulate the actual interview pressure better than solving 3 independent mediums.


Practical takeaways from this loop

  1. Google L4 is a follow-up game, not a solve-the-base-question game. The base question in Round 2 was straightforward HashMap usage. The rejection-causing moment was the second follow-up, which required rethinking the output architecture entirely. Solve 50 LeetCode mediums with self-imposed follow-ups rather than 150 mediums without follow-ups.

  2. Unprompted edge case discussion is an L4 signal. The line sweep round was "borderline positive" because the candidate did not raise the duplicates question before the interviewer did. At L4, the committee expects you to enumerate edge cases before coding. Write "Edge cases" as a section header on the whiteboard before your solution and list 2 to 3 before the interviewer asks.

  3. A perfect Googlyness round does not save mixed technical rounds. The interviewer was "super impressed." The candidate was still rejected. At L4, the committee weights technical rounds higher than behavioral. Do not over-invest in STAR story polish at the expense of follow-up chain practice.

  4. Walk through your code after writing, unprompted. The candidate's own advice. Do not wait for the interviewer to ask "can you trace through an example?" Do it yourself as soon as you finish coding. This catches bugs the interviewer has already spotted and demonstrates production-level diligence.

  5. Request mock interviews when onsite rounds are scheduled. The candidate recommends this explicitly. Google's recruiter team sometimes connects candidates with Googlers for practice sessions. The worst they can say is no.

  6. Prepare 4 distinct STAR stories, not 2 rotated ones. The Googlyness round is 45 minutes. Two stories with different framing will be exposed by the third question. Four distinct stories covering ambiguity, conflict, cross-cultural collaboration, and ownership cover the full behavioral grid.


Common questions about Google's 12-month cooldown

What is Google's 12-month cooldown? After a full-loop rejection, Google requires a 12-month waiting period before the candidate can re-interview. The cooldown is standard, not negotiable, and applies regardless of how close the candidate was to an offer. During this period, the candidate's profile remains in Google's system.

Does "super impressed" on Googlyness mean anything? It means the behavioral round was strong. It does not override technical weakness. The hiring committee sees all feedback and makes a holistic decision. One excellent behavioral round plus one unsolved coding follow-up plus one missed edge case discussion can still equal rejection at L4.

What is the difference between Google L3 and L4? L3 is SWE-2 (mid-level), L4 is SWE-3 (senior). The technical bar difference: L3 candidates are expected to solve base questions reliably and attempt follow-ups. L4 candidates are expected to solve follow-ups, raise edge cases unprompted, and demonstrate system-level thinking (the buffered-output architecture in Round 2's follow-up 2 is an example).

How much does Google L4 pay in Bangalore? Google L4 total compensation in Bangalore ranges ₹35L to ₹55L, depending on stock refresh, sign-on bonus, and team. Base salary is typically ₹22L to ₹30L. The remainder is RSU (vesting over 4 years) and annual bonus.

Should I disclose that I was rejected with a cooldown? No. When interviewing at other companies, you are not obligated to disclose Google rejections or cooldown status. The cooldown is internal to Google's systems.


Where this data comes from

This analysis is built on a verified interview experience posted on InterviewExperiences.in. Original source: Google L4 Bangalore 2025

PapersAdda's verification standard requires a publicly accessible post URL, per-round detail from the candidate, and a stated outcome. This post meets all three. The candidate documented all 4 rounds with specific questions, described follow-up chains in detail, and reported the rejection with 12-month cooldown. The Googlyness interviewer's "super impressed" reaction is quoted from the source. The Round 2 follow-up 2 (bidirectional time window) is described with enough technical detail to confirm the candidate actually encountered and attempted it.


Methodology applied to this articlelast verified 8 May 2026
Sources used
Public exam-pattern documents, official recruiter pages, and verified candidate reports on r/developersIndia and LinkedIn.
Verification window
Page last edited 8 May 2026 by Aditya Sharma. Numbers and patterns sanity-checked against the most recent 2026 cycle drives we tracked.
What we did NOT do
  • No fabricated salary numbers or success rates. If we quote a range, it's sourced.
  • No noun-substituted templates. This article was not generated by swapping company names in a stock prompt.
  • No paid placements, sponsored coaching links, or affiliate-shilled course pushes.
Verification policy: /editorial-standards/. Found something incorrect? Submit a correction - we respond within 48 hours.

topic cluster

More resources in Interview Questions

Use the category hub to browse similar questions, exam patterns, salary guides, and preparation resources related to this topic.

Open Interview Questions hubBrowse all articles

paid contributor programme

Sat this this year? Share your story, earn ₹500.

First-person experience reports help future candidates prep smarter. We pay verified contributors ₹500 via UPI per accepted story with byline.

Submit your story →

ready to practice?

Take a free timed mock test

Put what you learned into practice. Our mock tests match the 2026 pattern with timer, navigator, reveal, and score breakdown. No signup.

Start free mock test →
related guides
more from PapersAdda
Company Placement PapersGoogle Placement Papers 2026, Complete Guide with Solutions
16 min read
Guides & ResourcesGoogle Coding Interview Rounds 2026: Loop + Rubric
9 min read
Guides & ResourcesHow to Prepare for Google Coding Interview 2026: 12-Week Plan
13 min read
Company Placement PapersAccenture Interview Process 2026: Rounds & Prep
5 min read

Share this guide