我在 2026 年 4 月走完了 Accenture 的 frontend engineer 面试,岗位是 client-facing 产品团队的 mid-senior。这是一个定制软件交付团队,不是传统 consulting track,所以流程比纯 analyst 岗更偏技术。
三轮技术加一轮 behavioral。
round 1 - coding(60 分钟):共享编辑器 live coding。第一题是比较干净的 React 组件实现:做一个可筛选列表,支持客户端搜索和键盘导航。没限制库,我用的原生 React hooks。第二题是 JavaScript async:并行请求两个 endpoint 并合并结果,且能优雅处理任意一个的错误。Promise.all + try/catch。题不刁钻,但你要对 async 模型很扎实。不要求 TypeScript,但我用了,他们也没意见。
round 2 - system design for frontend(60 分钟):我没想到会这么「真」。他们让我设计一个面向客户的 dashboard,摄入实时数据(比如:物流跟踪 UI,每隔几秒更新一次)。我需要覆盖:组件架构、数据拉取策略(polling vs. SSE vs. WebSockets,以及原因)、缓存、规模下的性能(如果有 50 个 widget 各自打 API 怎么办)、无障碍基础。这更像是缩小版的 FAANG 风格前端系统设计。如果你要投,我建议真去学一下。很多前端候选人会跳过它。
round 3 - code review(45 分钟):他们给我看了一段真实的(去标识化)前端代码,让我做 review。代码有几个问题:useEffect 少了 dependency array 导致 bug、组件树过深造成 prop-drilling 地狱,还有一个性能问题是昂贵计算没有做 memoize。我需要像跟同事对话那样边看边讲。这种形式我之前没遇到过,挺喜欢的。它测的是你能不能建设性地给反馈,而不只是找 bug。
behavioral(45 分钟):STAR 格式,偏 consulting 风。「describe a time you pushed back on a client's technical decision(讲讲一次你对客户的技术决策提出反对意见的经历)」是最让我意外的一个。面前端我本来以为是些 culture-fit 软题。Accenture 就算是 IC engineer 也很看重交付判断。
offer 是 secondary market 的 mid-senior,base $118k。不是大厂薪酬,但如果你更喜欢「多样性胜过深度」,项目轮换和客户曝光确实挺有意思。