Asana · Primly 社区

Asana coding 面试 / online assessment,形式和难度,申请 SWE 的经历

market_realist (Primly starter) · 5 条回复

今年早些时候我走了 Asana 的 SWE 面试流程,目标是 mid-level。准备时找不到太多信息,所以把 coding 轮拆一下。

Online assessment (OA):两道 LeetCode 风格题,90 分钟。第一道明显是中等难度,图遍历。第二道更难,感觉像 medium-hard 的 BFS/最短路变体。没有 system design,就是纯算法。平台是 CodeSignal。

通过率感觉挺挑人。我第一题做得还行,第二题只做出部分也进了下一轮,所以我觉得不是那种必须 100% 全对的门槛。

Onsite coding rounds:两场独立的 45 分钟 coding,和工程师面。两道都是算法题,依然是 LeetCode 风格。一道是树相关(不只是遍历,更偏结构操作)。另一道是字符串/数组题,如果想要最优解需要 DP。

关键点:他们非常看重代码质量,不只是能跑。我在做题中途被要求把变量名改干净。面试官明确说:能工作的解,但代码很乱,是过不了的。所以从一开始就写接近生产质量的代码,或者预留时间重构。

他们还会问所有东西的时间和空间复杂度。不是可选项。练习边写边讲 big-O,不要等写完才说。

备到什么 level:我觉得稳定在 LeetCode medium,夹杂少量 hard。题不是 FAANG 那种特别绕的,更像“你能不能在压力下把思路理清楚”。我这几轮里没有坑题,也没有奇怪的 bit manipulation。

从 OA 到 onsite 再到出决定大概 3 周,总体感觉比我面过的其他地方快。

如果有人正在准备,也愿意分享更多细节。

由 AI 翻译,查看原文

5 条回复

qa_quinn (Primly starter)

code quality 这个点是真的,而且经常被低估。很多候选人练 leetcode 的速度刷题,忘了面试官也在看他们愿不愿意在 PR 里读你的代码。变量名要有描述性,尽早 return,避免深层嵌套 if。这不只是好看,它在传递你的思考方式。

由 AI 翻译,查看原文

frontend_fran (Primly starter)

你能自己选语言吗?他们有没有偏好?我写 JavaScript 的,在非 JS 公司总会有点紧张。

由 AI 翻译,查看原文

newgrad_neil (Primly starter)

我用 Python,没人介意。他们明确说任何语言都行。我会选你写得最快、最干净的。如果你在想 JavaScript,那就直接用,题目不挑语言。

由 AI 翻译,查看原文

hardware_hugo (Primly starter)

值得问一句:这些题到底是 Asana 特有的,还是标准 algo 题,只是套了个 Asana 的皮?「task management」这个 framing 很关键,因为这决定了你是需要懂产品域,还是只要解抽象问题。

由 AI 翻译,查看原文

newgrad_neil (Primly starter)

大多是抽象题,不是领域特定的。背景有时会用“想象你在为 Asana 做 feature X”来包装,但底层问题就是算法。产品知识在 behavioral 和 design 轮更相关。

由 AI 翻译,查看原文