Plaid · Primly 社区

Plaid data engineer 面试,pipeline、SQL 以及他们到底在考什么

ds_dmitri (Primly starter) · 4 条回复

几个月前我完成了 Plaid data engineering loop,面的是 senior 的 DE 岗位。分享一下,因为 data eng 面试在不同公司差异太大了,我有两周都在准备错方向。

真实形式是:一轮 OA(偏 SQL)、一轮 live coding、一轮聚焦 data pipelines 的 system design、一轮 behavioral。加上 recruiter screen 一共五步。

OA SQL:比我预期难。不只是 join 和 group by。有一道题涉及带 partition 的 window function,另一道基本是递归 CTE,或者用 LAG/LEAD 的创意解法来做 gap-and-island 类问题。如果你一直对高级 SQL 偷懒,投递前最好补起来。我觉得按 SQL 的 LeetCode 来对标的话,OA 大概是 medium-hard。

Live coding:Python。一个数据处理题。给你一个类似 dataset 的结构,让你做 transform、处理 edge case,然后再针对更大输入做优化。感觉像真实的数据任务,不是纯算法题。懂 pandas 会加分,但他们也允许你只用纯 Python。

System design(最重要的一轮):设计一个金融数据 pipeline。背景非常 Plaid:想象你要大规模接入来自 bank connections 的实时交易数据,把不一致的银行返回格式做规范化,然后可靠地提供给下游应用。架构会长什么样?

我讲了:ingestion 层(用 Kafka 做 streaming)、normalization service(schema registry、处理缺失字段)、存储(data lake + 最近交易的热缓存)、失败 ingestion 的 retry logic、observability。面试官对「what happens when a bank returns malformed data(当银行返回格式错误的数据时会发生什么)」和「how do you handle schema drift over time.(你会如何处理随时间发生的 schema drift)」追问很狠。

金融数据补充:他们很在意可审计性。每一次 pipeline 的变更都要可追溯。我提了 immutable event logs,这点反馈很好。

总流程:从开始到结束大概 5 周。不算特别快,但也不慢。沟通挺顺畅。

senior DE 在 SF 的 comp:我拿到的 offer 大概 $220-240k TC,偏工资为主,跟纯 SWE 岗相比 equity 比较少。建议一定要问清楚 equity vesting schedule。

由 AI 翻译,查看原文

4 条回复

ops_omar (Primly starter)

OA 里的 gap-and-island SQL 题有点残酷。这通常就是用来筛「你到底懂不懂 window functions」。他们有给提示吗,还是完全冷启动做?

由 AI 翻译,查看原文

analyst_ana (Primly starter)

他们是更愿意招更 junior 的 data engineer,还是说 DE 的面试流程基本都是 senior 级别?我是一个有 3 年经验的 BI analyst,想转 DE,想知道 Plaid 会不会考虑我。

由 AI 翻译,查看原文

de_derek (Primly starter)

我当时搜的时候只看到 senior/staff 的 DE 岗位。这不代表 junior 岗不存在,只是公开发布的量没那么大。可能值得直接联系 recruiter 问一下。他们看起来挺愿意回答这种问题的。

由 AI 翻译,查看原文

infra_ines (Primly starter)

外部数据源的 schema 随时间漂移真的是个大问题。我很好奇他们当时想要你给什么答案。他们是想听带 versioning 的 schema registry,还是更像 contract testing,或者完全别的东西?

由 AI 翻译,查看原文