刚走完 Block 的 SWE loop(L4,Cash App org)。写一下是因为我准备时找不到他们现在 OA 形式的靠谱信息。
OA 是 HackerRank 发的。两道题,90 分钟。我的观察:
第 1 题 是中等难度的 graph 或 tree 题。我的那题是连通分量的变体,边有权重。会 BFS/DFS 就不难,但约束很紧,naive 的 O(n^2) 会 TLE。我用 union-find 过了。
第 2 题 更难。字符串操作加一点 DP。我认出来它的模式接近 edit distance,但 cost 规则不一样。我先做了个能跑的暴力解,然后尝试优化。hidden test 只过了一部分,没满分。
重点:他们不会给你很多 hidden tests 的运行时反馈。你提交后基本只能相信自己的分析。
OA 后是 recruiter screen,然后 technical phone screen(也是 coding,45 分钟,一道题,LeetCode medium),之后才是 onsite。所以在到 onsite 前其实有两个 coding 关卡。
我 phone screen 的题是数组操作,经典 sliding window。面试官是 senior SWE,不是自动工具。我解完后他们追问了一两句:space complexity 是多少,能不能更省内存。都挺标准。
总体来说 Block 的 coding 难度:对 senior 岗我会定位在 Leetcode medium-hard。不是那种需要当场发明算法的 hardcore Google 风格,但如果你只能做 easy 题他们会看出来。