几周前做了 Figma 的 OA 和 phone coding round。记录一下,因为我准备时找不到最近的靠谱信息。
先是 OA。两道题,90 分钟,HackerRank 环境。我遇到的题: 一个图遍历题,涉及 dependency tree。基本是 topological sort 变体,有些节点带权重。Leetcode medium-hard。如果你图很熟,我觉得算 medium;不熟的话就挺 hard。 一个字符串操作题,看起来很简单,但有个边界情况你如果做得快就会踩坑。我差点挂在这题上,因为赶时间。
OA 之后,phone screen 是跟一个 engineer,不是 recruiter。60 分钟。一道更长的题,后面有 2-3 个 follow-up 都基于同一套设定。他们很在意你写代码时怎么沟通,而不只是最终输出。我一直在口述思路,他们也会回应、反过来问澄清问题。这种互动让我感觉这是他们想要的信号。
难度:整体以 medium 为主,但 follow-up 的深挖会把你推到 hard 的边缘。如果你能稳定在 25 分钟内做出 Leetcode medium,你会很舒服。如果你还经常被 medium 绊住,follow-up 会很难受。
语言:我用的是 Python,他们完全不介意。另一个帖子里有人用 Go 也说没问题。
一个没人提到的点:他们不只看最优解。有一次我提到一个我考虑过但不是最优的方案,以及我为什么放弃。面试官直接说:“good, we like seeing that thought process.” 所以把你的推理过程说出来,不要只报答案。
从 OA 到 phone screen 的时间:我这边大概 8 天。