上个月我收到了 CrowdStrike 的 online assessment,面的是 software engineer 职位。把笔记分享出来,因为我找不到最近的流程信息。
形式:HackerRank 平台,90 分钟,3 道题。
难度拆解: 题 1:easy/medium。像热身。我的是数组操作,带一些边界情况。 题 2:medium。图或树遍历。我那道是找满足某些条件的路径,挺常规。 题 3:medium-hard。这题需要多想一会儿。我的是模拟题,带点 security 的味道,比如追踪 process trees。不是纯 LC 刷题那种,更偏应用。
90 分钟 3 题,如果你对语言不够熟会有点紧。我用的是 Python。HackerRank 的自动补全和编辑器还行,没啥特别的。
他们说任何语言都可以,我也相信。没看到他们会因为 Python vs. C++ 扣分,但如果岗位偏 kernel-adjacent,我可能会用 C 或 C++(如果你熟的话),纯粹是观感。
我注意到几点: 边界情况很重要。有一道题有个不太显眼的输入约束,会改变解法。 干净的代码 > 极致快的代码。我留了一些注释解释思路,debrief 里对这个给了正反馈。 有 debrief。recruiter 会打电话讲结果,不是只发一封 pass/fail 邮件。他们还特别提了第三题。
整体 OA 感觉没那么像刷 LeetCode,而是有人挑了几道和真实数据处理工作多少有点相关的题。算法基础还是要准备,但别指望随机来一道纯 LeetCode hard。