几个月前我做了 capital one 的 frontend engineer 面试全流程,岗位是 mid-level(目标团队是 consumer card 产品线)。我写在这里是因为 capital one 的前端向面经很少,大多数帖子都是 SWE 泛泛而谈或者后端。
流程结构。 recruiter 电话,然后两轮技术面,再一轮行为面/价值观面。recruiter 提到有时会根据团队加一轮 design system 或 accessibility,但我的流程没有。
技术面 1:coding。这不是纯 javascript 脑筋急转弯。他们给了一个比较贴近真实的场景:做一个组件去拉取用户交易数据,并渲染一个可筛选的表格。关键点是要明确处理 error handling 和 loading states。我用的是原生 javascript + fetch(不强制框架)。他们非常在意:数据没到之前 loading state 怎么处理,网络报错时会发生什么,以及你能不能写得不过度抽象到 10 层。
一个追问是性能:'如果这个表有 10,000 行,你会怎么改?' 我们聊了虚拟滚动和分页。他们看起来挺满意我主动提了 requestAnimationFrame 和 layout thrashing。
技术面 2:web fundamentals。这一轮更偏对话,但信息密度很高。覆盖的点包括:浏览器渲染流水线(parse HTML、构建 DOM、CSSOM、render tree、layout、paint、composite)、event delegation vs 每个元素都挂 event listener(什么时候、为什么)、closure 怎么工作以及在循环里怎么坑你,还有一道 CSS specificity。还快速问了一个 accessibility:什么让一个 modal dialog 支持键盘可访问?
accessibility 这题把我那批人里一些同学问住了。如果你不懂 aria-modal、focus trapping、以及关闭后恢复焦点,建议补一补。capital one 因为服务很广的消费人群,对无障碍确实很重视。
行为面。四个 STAR 问题,很标准。其中一个比较突出的题是 'tell me about a time you pushed back on a UX decision from design.'(讲讲你曾经一次对 design 的 UX 决策提出反对/不同意见的经历。)他们想看你能跨职能协作,但既不当老好人,也不居高临下。
offer。Richmond VA 的 mid-level frontend(hybrid 每周 3 天到岗):总包大约 $145-155k(base + bonus)。McLean/DC 同级别通常会高 $10-15k。
overall:web fundamentals 的门槛很高。别跳过浏览器内部机制和 a11y 基础。