2026 年 3 月走完了 Bloomberg frontend engineer 的整个 loop。分享一下,因为那边的 frontend 面试体验跟我以前在产品公司经历的不太一样。
背景:4 年 frontend,主要 React,Bay Area。投的是 NYC 的岗位,全程 remote。
流程长什么样。 先是 recruiter 电话。然后一轮技术筛选,面的是工程师(45 分钟,基本都是 JavaScript)。接着 onsite 一天四轮:两轮 coding,一轮 frontend 的 system design,一轮 behavioral。
JavaScript fundamentals。 这点最让我意外。Bloomberg 对原生 JS 的深度是我以前任何面试都没遇到过的。包括 closures、prototype chains、event loop 和 call stack、this 绑定的边界情况、promise 内部机制。不是那种「what does async/await do(async/await 是干什么的?)」的程度,而是真的会问:event loop 在 microtask queue 和 macrotask queue 之间到底怎么跑。如果你写了很多年 React 但底层有点忘了,回去补一下。MDN + Jake Archibald 的 event loop talk。
Coding rounds。 偏算法但不是纯 LeetCode。一轮是 DOM 操作题:不借助框架从零写一个简单组件。纯 Vanilla JS。不能用 React,也不能用库。需要处理 event delegation、手动管理 state、还要做可访问性。比我预期难。第二轮更常规一些,算法题,中等难度。
Frontend system design。 设计一个实时金融数据 dashboard。比如:流式更新、渲染性能、慢网处理。我提了 data layer 用 websockets,大表用 virtual scrolling,debouncing/throttling,重计算用 Web Workers 挪出主线程。他们会追问可访问性和性能测试,我觉得这说明他们真正重视什么。
Behavioral。 跟很多人对 Bloomberg 的描述差不多。ownership 和失败经历,必须给具体例子。我讲了一个我们上线后引入性能回退的故事,以及怎么定位和修复的。效果不错。
Bloomberg 的 terminal 面向的是需要精确和可靠的金融从业者,不是炫酷的消费级 app。我觉得这会影响他们招 frontend engineer 时的偏好:性能、正确性、扎实的基础比最新框架更重要。