Meta's New Grad roles are open, and a submitted resume drew an interview invite fast. This debrief covers the coding round: the full flow, the real experience, and two real problems. The interview runs on Zoom with CoderPad for code (Excalidraw for system design). Unlike some companies, Meta's coding round does not require your tests to actually pass—it emphasizes thought process and code rigor. After finishing, you must dry run it yourself, walking the data line by line and calling out edge cases.
Meta NG Coding Round at a Glance
| Dimension | Details |
|---|---|
| Platform | Zoom + CoderPad (Excalidraw for design) |
| Duration | 45 min, two problems (~20 min each + 5 min buffer) |
| Run code? | Not required; dry run emphasized |
| Difficulty | Mostly high-frequency tag problems; the second steps up |
| Style | Narrate while coding, proactively verify boundaries |
The pace is tight: stall on the first problem and you won't finish the second. Stay calm, and when a familiar tag problem appears, commit fast without hesitating.
Problem 1: Merge Overlapping Intervals
Given a set of intervals, merge any that overlap into one.
Reframe: a classic tag problem. Sort by start, scan once, and if the current interval overlaps the previous, merge into a larger one; otherwise append it. Once you've seen it a few times it's quick.
def merge(intervals):
if not intervals:
return []
intervals.sort(key=lambda x: x[0])
res = [intervals[0][:]]
for s, e in intervals[1:]:
if s <= res[-1][1]: # overlap: merge
res[-1][1] = max(res[-1][1], e)
else:
res.append([s, e])
return res
Dry-run walkthrough: take [[1,3],[2,6],[8,10],[15,18]]. After sorting it's unchanged; the first two overlap and merge into [1,6], the last two stay, yielding [[1,6],[8,10],[15,18]]. Proactively address boundaries with the interviewer: do exactly-adjacent intervals (e.g. [1,2] and [2,3]) count as overlapping? How do you handle empty input? Time: O(n log n). Space: O(n).
Problem 2: Course Schedule (Topological Cycle Detection)
There are several courses, each possibly depending on others; can you finish all of them? This is detecting whether a cycle exists in a directed graph—a cycle means you can't.
Reframe: topological sort. I used BFS (Kahn's algorithm): count in-degrees, repeatedly pop a course with in-degree 0, remove it, and decrement neighbors' in-degrees. If you traverse all courses, there's no cycle.
from collections import deque
def can_finish(num_courses, prerequisites):
graph = [[] for _ in range(num_courses)]
indeg = [0] * num_courses
for a, b in prerequisites: # take b before a: b -> a
graph[b].append(a)
indeg[a] += 1
q = deque(i for i in range(num_courses) if indeg[i] == 0)
seen = 0
while q:
node = q.popleft()
seen += 1
for nxt in graph[node]:
indeg[nxt] -= 1
if indeg[nxt] == 0:
q.append(nxt)
return seen == num_courses # all dequeued = no cycle
Dry-run walkthrough: dependency [[1,0]] (take 0 before 1) → start from course 0 (in-degree 0); after removal course 1 drops to 0, topological order [0,1], all finished, return True. With [[0,1],[1,0]] → mutual dependency, no in-degree-0 node enqueues, seen < num_courses, return False. Time: O(V+E). Space: O(V+E).
Meta interviewers usually won't interrupt, but they want you to narrate while coding, so explain why you chose this method as you implement.
Meta Coding Round Mindset
| Focus | Practice |
|---|---|
| Tag fluency | Intervals, sorting, graphs, sliding window, binary search—instant recall |
| Dry run | Walk an example right after coding; cover happy path + edges |
| Edge checklist | Empty input, single element, adjacent-not-overlapping, cycle / no cycle |
| Narrate while coding | Keep verbalizing so the interviewer tracks your logic |
The overall takeaway: Meta's coding round isn't meant to stump you—it checks your familiarity with common patterns and whether you can carry a solution fully through under time pressure.
FAQ
What platform does Meta's NG coding round use, and do you run code?
Zoom + CoderPad (Excalidraw for system design). It does not require your tests to pass—instead you dry run after finishing, walking the data line by line and articulating boundaries, evaluating thought process and code rigor.
Is 45 minutes enough for two problems?
About 20 minutes each with a 5-minute buffer—tight. Stall too long on the first and you won't finish the second, so commit fast on familiar tag problems and don't over-invest in the easy one.
Which tags does Meta frequently test?
Interval merging, topological sort / course schedule, sliding window, binary search, graph BFS/DFS. These are the high-frequency NG coding-round topics—drill them until the approach is instant.
How thorough should the dry run be?
Beyond the happy path, cover empty input, single element, adjacent-not-overlapping, and cycle / no cycle. Meta cares a lot whether you proactively verify boundaries—this often moves the score more than an AC.
Preparing for the Meta NG coding round?
Meta tests tag fluency, dry-run rigor, and narrate-while-coding communication. oavoservice offers full Meta NG coding-round coaching: timed high-frequency tag mocks, dry-run walkthrough training, and edge-checklist drills, plus live VO support / VO proxy pairing. Share the job description so we can predict the problem set and plan practice.
Add WeChat Coding0201 to get Meta NG problems and mocks.
Contact
- WeChat: Coding0201
- Email: [email protected]
- Telegram: @OAVOProxy