← Back to blog Google OA 2026 Full Prep Guide | Grad / Intern / Foobar Three-Track Breakdown
Google

Google OA 2026 Full Prep Guide | Grad / Intern / Foobar Three-Track Breakdown

2026-05-23

Google's OA isn't a single test — it's three parallel tracks: Grad OA (New Grad SDE), Intern OA (summer / year-round), and invitation-only Foobar (Google's internal recruiter pool). Each has its own platform, format, and difficulty. Below: 2026 spring-cycle breakdown + prep strategy.

Google OA Three-Track Snapshot

Track Platform Duration Questions Difficulty
Grad OA Google in-house 90 min 2 LC Medium-Hard
Intern OA HackerRank 60 min 2 LC Easy-Medium
Foobar Google in-house (terminal sim) unlimited 9 in 5 levels LC Medium → Hard

Grad OA Problem Lines

Type 1: Graph + State Search

n-node directed graph, each node carries a cooldown. From node 0, find the minimum total time to visit all nodes (re-visit only after cooldown ≥ T).

from functools import lru_cache

def min_visit_all(n, edges, cooldown):
    g = [[] for _ in range(n)]
    for u, v, w in edges:
        g[u].append((v, w))

    @lru_cache(maxsize=None)
    def dp(node, visited_mask, last_visit_time_tuple):
        if visited_mask == (1 << n) - 1:
            return 0
        best = float('inf')
        for v, w in g[node]:
            new_mask = visited_mask | (1 << v)
            sub = dp(v, new_mask, last_visit_time_tuple)
            if sub != float('inf'):
                best = min(best, w + sub)
        return best
    return dp(0, 1, tuple([0] * n))

Prompts typically cap n ≤ 12, hinting at bitmask DP.

Type 2: DP / Interval / Number Theory

Classics like LC 1547 / 312 / 1392. Google favors plain wording + non-trivial state compression.

Intern OA Problem Lines

Smaller volume, faster pace: 2 problems in 60 minutes. Typical combos:

Example: String Reorganization

import heapq
from collections import Counter

def reorganize_string(s):
    cnt = Counter(s)
    if max(cnt.values()) > (len(s) + 1) // 2:
        return ""
    h = [(-v, k) for k, v in cnt.items()]
    heapq.heapify(h)
    res = []
    prev = (0, '')
    while h:
        v, k = heapq.heappop(h)
        res.append(k)
        if prev[0] < 0:
            heapq.heappush(h, prev)
        prev = (v + 1, k)
    return ''.join(res)

Foobar Problem Lines

Foobar is 5 levels, 9 problems, progressing LC Medium → Hard. Only Java / Python accepted; no auto-test feedback — one submission, pass/fail.

Completing Level 3 triggers a Google recruiter reach-out; Level 5 = onsite direct.

Office-by-Office Differences

Office Preferred Topics
Mountain View Search systems, ad ranking, recommendation
New York Finance / ads / Cloud
Zurich Compiler / number theory / large-scale distributed
Seattle Cloud / SRE / Storage

7-Day Sprint

Day Task
D1 Graph: topo, Dijkstra, Floyd, Tarjan
D2 DP: knapsack, interval, bitmask, probability
D3 Strings: KMP, Trie, Z-function
D4 LC Google-tagged Medium ×20
D5 LC Google-tagged Hard ×10
D6 Timed 90-min Grad OA mock
D7 Debrief + gap drills

FAQ

Grad OA prompt language?

English primarily. Some China-office Intern OAs offer Chinese prompts.

How does a Foobar invite happen?

Mainly Google pushes invites based on search behavior + GitHub activity. A minority enter via GCJ / Kickstart.

Pass rate?

Community reports: Grad ~20%, Intern ~35%, Foobar Level 3 = recruiter reach-out.

Result timeline?

Usually 7–21 days. Grad OA pass → phone screen; Intern OA → host matching.


Preparing Google OA / VO?

We were glad to help this cohort pass Google Grad / Intern OA. Many candidates told us LC Google-tag grinding triggers "I can't do Hard" anxiety, but 80% of real Google OAs are "plain wording + bitmask DP" combos — the key is spotting the hidden state.

If you're prepping Google, Meta, DeepMind, or Waymo OA / VO and feel directionless or unsteady on pacing, contact oavoservice. We tailor OA assistance to your gaps and lock in the Grad / Intern / Foobar three-track patterns.

👉 Add WeChat: Coding0201grab the Google prep pack.


Contact

Email: [email protected]
Telegram: @OAVOProxy