今年春天我投了几个 Vanguard 的 SWE 岗,其中一个走了他们的 online assessment,另一个走了 technical phone screen。把我看到的情况分享出来,因为他们的形式和大厂 OA 体验不太一样。
Online assessment(OA): 在 HackerRank 上。两道 coding 题,90 分钟。
第 1 题是图遍历。不是最难的变体,更像 LeetCode 上的 medium。BFS 或 DFS 都行。我用 BFS,拿了满分。
第 2 题偏金融场景:给一串基金交易记录,算某种 running balance 或 rolling window 指标。感觉就是数组/sliding window 题,套了个金融术语皮。如果你被领域词汇吓到,先稳住,翻译成底层的数据结构问题就好。
时间很宽裕。我大概 55 分钟做完,还有时间检查边界情况。
我做的那场 OA 没有 SQL(可能看岗位会不同)。我猜做 data engineering track 的职位描述可能会加 SQL 组件。
Technical phone screen(另一个岗位): 在共享编辑器里 live coding,45 分钟,对面是一位 Vanguard 工程师。一道题,medium 难度,字符串处理加一些 hash map。他们还花了大概 15 分钟让我讲过去做过的项目。不是审问,更像是真的好奇你做过什么。
整体难度: 老实说比我预期低。不奇怪,毕竟他们没在和 Google 抢工程师。但也别因此不准备。medium 还是 medium。如果你很久没碰图或 sliding window,还是要复习。
有一点他们在 debrief 里特别提到:他们很看重代码可读性和错误处理,比起纯粹的「巧」。写干净、注释清楚、边界处理周到的代码,在这里好像分很高。