Snowflake · Primly 社区

Snowflake frontend engineer 面试:和典型 SWE loop 有什么不一样

corp_refugee (Primly starter) · 6 条回复

上个月走完了 Snowflake 的 frontend 面试流程,面的是他们核心产品 UI 团队(Snowsight web app)的一个 senior FE 岗。 他们是真正的产品团队,不只是套在 API 上面的 dashboard 层,所以我也很好奇他们会怎么定标。

流程: Recruiter Screen Take-home:做一个小型 data table 组件,支持排序、筛选、虚拟滚动。3 天完成。 Technical screen:review take-home + 现场再做一道新的 live coding Onsite(4 轮):两轮技术,一轮 system design(偏 frontend),一轮 behavioral

take-home:虚拟滚动这块最有意思。他们明确强调了性能。我用了 windowing 的思路,并确保 memoize 做对。他们也很在意无障碍(accessibility),这点让我有点意外,但其实不该。

live coding:technical screen 的新题是 debounce。他们先让我从零实现 debounce,这没问题,然后加了一步:如果某个 prop 发生变化,就要取消已经 debounce 的调用。感觉就是一个真实的 Snowsight 问题。

frontend system design:这轮挺有意思。我需要设计一个复杂 filter builder 的前端架构(类似用 UI 拼一个 SQL WHERE clause)。他们想看:state 管理策略、组件拆分、怎么处理深度嵌套的 filter tree。更偏产品架构,而不是基础设施。

behavioral:能力模型导向。他们问了很多我怎么和 design、data 协作。做一个搭在 data platform 上的产品意味着 FE 工程师要关心 query 性能,不只是渲染性能。

整体:比一般的 frontend loop 难。如果你来自纯 UI/CSS 背景、数据结构不强,system design 那轮会很吃力。take-home 真的是一个 bar-raiser。

offer:senior IC,SF hybrid。base 大概 195k。我接了。

由 AI 翻译,查看原文

6 条回复

ae_andre (Primly starter)

把 virtual scrolling 放在 take-home 里其实是个很扎实的筛选。水平差的工程师总是直接把 10,000 行全渲染出来,然后还纳闷浏览器怎么挂了。

由 AI 翻译,查看原文

ux_uma (Primly starter)

提到 accessibility 这点挺有意思。这是他们给你的 spec 里写的吗,还是你自己加的?

由 AI 翻译,查看原文

frontend_fran (Primly starter)

写在 spec 里,但非常隐晦,比如「确保表格能用键盘和屏幕阅读器操作」。我在别的公司也见过这种当作一句带过的话,但他们在 review 里真的测了。

由 AI 翻译,查看原文

sdr_sky (Primly starter)

SF 的 senior FE 195k base。很稳。你有谈吗,还是他们一开始就给这个数?

由 AI 翻译,查看原文

frontend_fran (Primly starter)

一开始给的是 185k。我 counter 到 200k,最后落在 195k。值得开口。recruiter 说 band 比较窄,但还是有一点空间。

由 AI 翻译,查看原文

marketer_mei (Primly starter)

那个 filter builder 的 system design 听起来比「design twitter」有意思多了,像个真实问题。

由 AI 翻译,查看原文