大概六周前面完了 Affirm 的 MLE 全流程,方向是 credit underwriting 侧的 risk modeling。分享点细节,因为这里的 ML 面试跟你在典型大厂 ML 团队预期的不太一样。
核心主题: 在高风险、强监管语境下做 applied ML。他们要的是会考虑 model calibration、公平性约束、以及线上可靠性的人。那种只会算法、讲不清 decision thresholds 或 adverse action notices 的,会很吃力。
轮次: coding screen(45 分钟):标准 python 数据结构题。不会难到卡住你。他们想看干净、可读的代码。 ML depth(60 分钟):这轮才是重点。他们会沿着我过去做的模型追问。我需要解释一个信用模型里 precision/recall 的取舍,false positives 很贵(批了坏借款人)和 false negatives(拒了好借款人)时会有什么不同。我们深入聊了 class imbalance 处理、threshold tuning,以及为什么只用 FICO 不是很好的 feature set。 ML system design(60 分钟):"design a fraud detection system for affirm real-time transactions.(为 affirm 的实时交易设计一个欺诈检测系统。)"(为 affirm 的实时交易设计一个欺诈检测系统。)他们会强追 latency 要求、feature store 设计、model refresh 的节奏。还问我当出现一个新的 merchant category 时,怎么处理 distributional shift。我以前做过类似题,但 fintech 的细节让它更落地。 behavioral:4 题,标准 STAR。有一题专门问你:你上线的某个模型导致了下游问题。准备一个好故事。 coding again(偏 ML):让我实现一个基础 sigmoid,然后问极端值下数值会发生什么、怎么修。接着问 gradient descent。不需要 pytorch 水平,就是基本功。
他们最看重的: model governance 和 fairness compliance 很严肃。ecoa 和 fair lending 都会提。如果你来自 consumer credit 或 lending 背景,会天然更有优势。