刚结束 Cohere software engineer 的面试流程,趁还新鲜把 full loop 写一下。通过 LinkedIn 投的,大概 10 天就回了我,比我其他投递快得有点反常。
流程是:recruiter screen(30 分钟)-> 工程师 technical phone screen(45 分钟)-> take-home 或 async coding challenge -> onsite(4 轮,全程线上)。从第一次联系到 verbal offer 的日历时间总共大概 5 周。
Recruiter screen 很标准:过一遍背景、为什么 Cohere、确认薪资范围、签证状态。她人挺友好,也把整个流程讲得很清楚,这点我很喜欢。
Technical phone screen 分两部分。前 20 分钟是算法,一道中等难度的字符串解析题。后半段聊一个过去的项目,围绕我做过的设计权衡追问得挺深。不是那种 leetcode 刷题局,更像是在看你怎么推理和思考。
Onsite(4 x 60 分钟)覆盖: Coding(两题,中等偏中等,偏好 Python 或 Go,但他们说任何语言都可以) System design,偏 LLM/inference 基础设施相关。下面会展开。 Behavioral,4-5 个问题,标准 STAR,但他们会在「"what would you do differently(你会做哪些不同的事情)"」这一层追得很狠 Cross-functional,面的是 product 或 research 的人,偏聊天式
System design 那轮和我在其他 AI 公司见过的很不一样。他们真的在意你怎么思考大模型的规模化服务:token 预算、batching、cache inference 结果。你不需要是 ML 专家,但大概知道 transformer inference 怎么跑会很有帮助。
整体感觉 Cohere 更偏协作式而不是审讯式。面试官像是在认真对话,不是在照本宣科。没有谜题,没有刁钻题。
我拿到 offer 了。有问题可以问我。