两周前刚做完 Splunk 的 online assessment,岗位是 mid-level backend SWE。因为我进去的时候有点两眼一抹黑,分享下这次 coding 面试 / OA 到底长什么样。
他们用 HackerRank。我这次 OA 是 90 分钟,2 道题。
第 1 题是 string 处理。读下来有点像 log parsing 的变体,符合 Splunk 的产品背景。按 LC 标准是 medium,可能偏 low-medium。我大概 30 分钟做完,包括处理 edge cases。他们看重的是 edge case 的正确性,不只是走通 happy path。
第 2 题是 graph / tree 遍历。medium 难度,BFS/DFS 范围,不偏门。我用 BFS,过了。我没有刻意用很花哨的方法,就是写干净可读的代码,然后把 edge cases 处理好。
有个点值得注意:你不会在平台里看到 OA 结果。他们只会通过 recruiter 把你推进下一步(或者直接沉默)。我是在 4 天后收到 recruiter 邮件约 phone screen 才知道自己过了。
准备时我觉得有用的几点: 他们 OA 看起来不怎么出 hard 的 LeetCode 题。重点刷 mediums,尤其 strings/arrays 和 graph traversal。 代码尽量写注释,或者至少变量命名清晰。我听做过 onsite 的人说,review 的时候有时会看 code quality。 时间管理:每题 45 分钟,如果你练过是够的,但如果第一题卡住了,90 分钟会过得很快。
我听说 onsite 的 coding 轮难度类似,但更偏对话式。不过 OA 是一个很干净的过滤器,看的就是「这个人能不能快速写出能跑的代码」。