几个月前面了 EY 的一个 ML engineer 岗位(Technology Consulting 里 AI practice 方向)。职位描述里是那种常见的 buzzword 清单。下面是面试实际考的内容。
背景: 团队做的是面向金融服务客户的 ML 解决方案。比如 fraud detection、credit risk modeling,还有一些文档处理相关的 NLP。不是研究型,是应用型 ML。
流程: Recruiter screen 跟 ML engineer 的 technical screen(60 分钟) Case study:提前几天发给你,面向 3 人 panel 做展示 Partner/managing director conversation
Technical screen 拆解。 面试官很靠谱。主要聊了: 解释 gradient boosting vs random forest。对于 fraud detection 的场景你什么时候选哪个。 你在处理高度类别不平衡(fraud 只有 0.3% 交易)时会怎么做。 SQL:写一个 query,从交易表里按特定条件拉 training dataset。是真实 SQL,不是玩具题。 System design:有个 batch fraud scoring job 要跑 6 小时,但业务需要 near-realtime 分数。你会怎么做。
没有 leetcode。没有算法类 coding puzzle。如果你一直在刷那套,需要调整方向。他们要的是应用 ML 的思维,不是大 N DSA 备考。
Case study 是最难的部分。给了一个虚构客户场景:零售银行想做一个 document classification system 来自动化贷款流程。我需要讲清楚问题定义、数据需求、模型选择的理由、评估方式,以及怎么把 tradeoff 讲给非技术的客户方 stakeholder 听。
最后这点在 EY 很重要。如果你没法给一个不懂 confusion matrix 的 VP 解释 precision vs recall 的取舍,在咨询环境里会很吃力。
他们不考什么: 研究级的深度内容。Transformers、自定义架构、RLHF。他们更在意的是「你能不能把一个可靠的模型上生产给客户用」,而不是「你知道论文上的 SOTA 吗」。