2026 年 4 月走完了 shopify 的 frontend SWE 流程,面的是 senior frontend engineer 岗位。分享拆解,因为我找到的大多数帖子都停在 2022-2023,有些细节已经变了。
面试轮次:
recruiter 电话 screen:30 分钟,走简历,外加一道 easy-medium 的 javascript 题,在共享文档里写。他们给的是一个转换嵌套对象结构的问题,不算偏门。
take-home 项目:这是重头戏。他们让我从零做一个小 React app。题目大概是:从指定 API 拉数据,用可筛选列表展示,处理 loading 和 error 状态。他们评估:组件架构、状态管理选择、无障碍(语义化 HTML、需要时加 aria label)、以及代码清晰度。我大概花了 4-5 小时。不要只做到能跑就结束。组件结构要想清楚,顺便写个简短 readme 说明你的决策。
技术深挖(60 分钟):面试官会把我的 take-home 拆开细问。很多「你为什么这样做」和「如果 X 发生你要怎么扩展」。还有一些浏览器性能问题:什么会导致 layout thrashing、你怎么 debug 慢渲染、什么时候用 useCallback vs useMemo vs 都不用。还问了一题 CSS 的 cascade 和 specificity 怎么工作(不刁钻,就是基础)。
system design(偏前端):设计一个高流量商家的 checkout 页面。他们想听:渐进式加载、错误恢复、支付表单无障碍、结账中途断网怎么处理。这轮如果你懂 shopify 的实际产品会很加分,因为 checkout 对他们来说就是命。
behavioral:标准的价值观导向。shopify 很看重 ownership 和 impact。带一个你不等许可、自己拍板推进的故事。
他们最在意的:
无障碍会以一种在大多数公司看不到的频率反复出现,而且不是做样子。面试官是真的懂。如果你在 take-home 里没考虑 focus 管理、色彩对比、键盘导航,你会很明显感受到。
offer:base CAD 155k,外加股票。加拿大 fully remote。灵活性是真的。
欢迎提问。