几周前在还在职的情况下做了这个。外面信息奇怪地很稀缺,所以说下 Ramp 的 coding rounds 真实是什么样。
没有传统的先做 OA。他们会跳过那种自动化的 HackerRank 风格筛选。第一次 coding 接触点就是和工程师 live 面试,大概 60-75 分钟。
形式: 每场一到两题。如果只给一题,通常会更复杂。第二题(如果给)往往更短,考某个特定点,比如数据结构或字符串处理。
难度: 相当于 LeetCode 中等到偏难。我会说大多数按 LC 标准算「medium」,但他们会加语境让它更难:题目会被包装成真实 fintech 系统会做的事。我其中一题是交易分类逻辑,需要很仔细地处理嵌套分类层级里的各种 edge case。不是标准的树题,但会用到树遍历能力。
预计会追问时间/空间复杂度。他们有时也会问「how would you change this if the dataset was 10x?(如果数据集变成 10 倍,你会怎么改?)」,表面看是别的问题,其实是披着马甲的分布式系统角度。
语言:随你选。我用的是 Python,没问题。
我踩的坑:我花太多时间一开始就想优化。他们更在意你先把可工作的解法写出来。优化是 follow-up 讨论,不是 upfront 要求。我在第 2 轮吃了这个亏。
整体门槛是真实的,但不会无谓地残酷。如果你是认真准备过(不只是刷 LC,而是真的理解推理过程),就没问题。他们不是想逮你。