最近刚结束了 Meta Careers 的 SDE 面试流程,整体感受就是:节奏快、追问深、非常看重工程能力和 communication。和很多大厂不一样,Meta 不太喜欢"背模板式回答",更希望你能现场把问题真正拆开、讲透。
我这次面的是 backend 方向,整个流程大概持续了三周,包含 recruiter call、两轮 coding、system design、behavioral。

OA / Phone Screen
第一轮是 Coding Screen,45 分钟两道题。
题目整体不算特别刁钻,但非常考验 coding speed。Meta 面试官默认你基础已经很好,所以不会给太多提示,基本就是:
- 题目讲完
- 开始写
- 一边写一边 explain
- 写完直接跑 case
第一题偏 hashmap + string。
Question 1
Given a string, return the length of the longest substring without repeating characters.
这题本身不难,就是经典 sliding window,但 Meta 非常在意:
- 时间复杂度是不是 O(n)
- variable naming 是否清晰
- edge case 有没有主动提
第二题明显更偏真实工程场景。
Question 2
Design an in-memory file system.
Implement:
- create(path, value)
- get(path)
- list(path)
这一题追问很多。
面试官后面继续问:
- 如果支持并发怎么办?
- 如果 path 数量百万级怎么办?
- Trie 和 HashMap 的 tradeoff?
- 如何优化 list 操作?
很多同学会卡在"写完代码就结束"的思维,但 Meta 更像是在看你是不是 senior engineer 的思考方式。
VO Coding Round
VO 的 coding 压力明显更大。
每轮 45 分钟,两道 medium 偏上的题,而且几乎都需要一次 AC。
Round 1
第一题:
Binary Tree Vertical Order Traversal
核心考察:
- BFS
- column indexing
- traversal ordering
第二题:
Merge Intervals with Labels
不只是 merge interval。
面试官会继续问:
- 如果 interval 是 streaming data?
- 如果数据量无法一次载入内存?
- 如何做 distributed merge?
Meta 很喜欢这种"从算法延伸到工程"的追问。
Round 2
这一轮明显 harder。
第一题:
LRU Cache
经典题,但要求:
- O(1) get
- O(1) put
- thread-safe discussion
第二题:
Find Mutual Friends Recommendation
属于 graph + ranking。
这里不只是写 BFS。
后面会追问:
- 如何做 friend recommendation ranking
- 如何避免 celebrity bias
- 如何处理 cold start user
能明显感觉到 Meta 很强调"真实产品思维"。
System Design Round
这一轮是整个流程最难的。
题目:
Design Facebook News Feed
这个题几乎是 Meta 高频。
一开始以为只是普通 feed system design,结果面试官一直深挖:
- Fanout-on-write vs fanout-on-read
- ranking pipeline
- cache invalidation
- hot key handling
- consistency model
- backpressure
- recommendation latency
这里建议一定不要只会背模板。
Meta system design 很强调:
- tradeoff
- scalability reasoning
- why this design
- failure handling
我当时还被问到:
How would you redesign the feed for 10x DAU growth?
如果没有真正做过大型系统,很容易被追问击穿。
Behavioral Round
Meta behavioral 和 Amazon 不太一样。
Amazon 是 LP 深挖。
Meta 更强调:
- fast execution
- conflict handling
- ownership
- impact
高频问题:
Tell me about a time you disagreed with your manager.
Describe a project with significant ambiguity.
Tell me about your biggest production failure.
回答一定要数据化。
不要只讲"我做了什么",而是:
- impact
- metrics
- scale
- lessons learned
整体难度总结
我自己的感受:
| 环节 | 难度 |
|---|---|
| Phone Screen | Medium |
| VO Coding | Medium-Hard |
| System Design | Hard |
| Behavioral | Medium |
Meta 最大特点不是题目变态,而是:
- 追问非常深
- 节奏极快
- 非常看 communication
- 非常强调工程 reasoning
很多人算法不错,但 explain 不清楚,会非常吃亏。
准备建议
如果准备 Meta SDE,我觉得重点应该放在:
Coding
- 高频 LeetCode Medium
- Graph / Tree / BFS
- Sliding Window
- Design Questions
尤其要练:
- 边写边讲
- 不停 explain tradeoff
- 快速 debug
System Design
建议至少熟悉:
- Feed System
- Chat System
- Notification System
- Distributed Cache
- Rate Limiter
Meta 很喜欢从产品角度往 infra 深挖。
Behavioral
不要背八股。
一定准备:
- conflict
- ambiguity
- failure
- leadership
- ownership
而且最好全部量化。
最后
这次 Meta 面试下来最大的感受就是:
真正难的不是算法,而是在高压环境下还能保持清晰表达。
很多时候面试官其实已经默认你会写题,他们更想知道:
- 你如何分析问题
- 如何做 tradeoff
- 如何与团队协作
- 如何把系统真正落地
另外这次准备期间,我也参考了不少高频 VO 面经和 mock interview 资料,包括一些 coding + system design 的真实追问整理。像 Programhelp 这类专门做大厂 interview preparation 的平台,确实整理了很多近期开源面经、高频题库和 mock 资源,对于准备 Meta 这种高强度面试帮助挺大。
更多真实 OA / VO 高频题也可以参考: