Skip to content

面经总结:LazyArray + Revenue Refer 双轮面试经历

发表于 2025-10-20
更新于 2025-10-21
阅读量 加载中...

面试流程概览

  1. 初步沟通(Email To Phone Call)
    首先通过邮件约了一个 phone call,主要是一些简单的沟通和背景了解。
    随后正式约了两轮 back-to-back 的面试(VO)

第一轮:LazyArray 设计题

面试官: 一位华人 Sr. SWE
氛围: 人很客气,但整体比较 passive。从我自我介绍开始就一直摇头,全程沟通不太顺畅。

题目描述

题目是经典的 LazyArray(网上能搜到原题):

实现一个 LazyArray 类,要求支持以下功能:

  • 能查询特定元素的第一个 index。
  • 实现一个 map 接口,接受一个函数指针(function pointer)。
  • 这个函数会对每个元素进行操作,但不能立即执行,而是直到调用 indexOf 时,才按顺序执行之前所有的函数进行更新。
  • 调用 map 后,需要返回一个新的对象,包含当前对象和新传入的函数指针,而不是对原对象进行 in-place 更新。

面试沟通体验

  • 我特意问了面试官是要 in-place 更新还是返回新对象。
    他一开始说“都行”,我写完后又说“不行”。
  • 整个过程中,面试官经常只回答“what do you think this should be like” 或 “up to you”,导致需求模糊。
  • 有时我问了问题得不到明确回应,后来又被指出“这样不对”,体验不佳。

总体感觉题目本身并不难,难点在于沟通和需求不清晰。

第二轮:Revenue Refer 系统设计题

情况: 原定 back-to-back 面试,但在开始前 5 分钟突然被告知要 reschedule。
我还在会议室等了半天。第二周重新安排。

面试官: 一位印度籍 Tech Lead
氛围: 人非常 nice,全程非常 responsive。

题目内容

题目是 Revenue Refer。
我们讨论了约 30 分钟的实现思路、数据结构选择和复杂度分析。
最后一遍完整实现,面试官看起来非常满意。

这一轮整体发挥非常顺利,沟通流畅、思路清晰。

后续情况

之后就是漫长的等待。
其他同批候选人要么很快收到后续面试,要么直接收到拒信。
我这边一直被“吊着”,连 follow-up email 也没有回复。
后来查询才发现被拒了。

总结与反思

  • 一面最大的问题是需求沟通不清晰、方向反复。
  • 二面表现很好,但可能因为一面的不稳定影响了结果。
  • 整体体验:虽然对这家公司有好感(本科时还做过数据库科研),但这次流程下来感觉好感有些下降。