did the capital one MLE loop targeting their fraud/risk ML team in mclean earlier this year. here's the full breakdown. posting because the ML loop there is less documented than the SWE loop and i had to piece this together from scattered threads.
first: capital one is legitimately one of the more serious ML shops in financial services. they have real model ownership at scale, not just 'we use a vendor model and call it AI.' that actually changes what the interview is testing.
loop structure. five rounds: intro/recruiter, ML fundamentals, system design for ML, coding, and behavioral. for senior MLE there's also often a research or paper discussion depending on the hiring manager.
ML fundamentals round. this was the most interesting one. they asked about gradient boosting internals (how do you control overfitting in XGBoost, what's the difference between regularization in L1 and L2 and when does each matter). then a case study: 'you have a class imbalance problem in a fraud detection model, how do you handle it?' i walked through SMOTE, class weights, threshold tuning, and the precision-recall trade-off. they care that you know which metric matters for fraud specifically (recall/false negative cost >> precision/false positive cost in most fraud contexts). that framing seemed to resonate.
they also asked a feature engineering question: given raw transaction logs, what features would you engineer for a real-time fraud model? i talked about velocity features (count of transactions in past N minutes for user, merchant, card), distance/location anomalies, device fingerprinting, and time-of-day encoding. they pushed: 'how do you compute velocity features in real time without hitting the database on every transaction?'
ML system design. classic: design a real-time fraud scoring system. think about: model serving latency (sub-100ms per transaction), feature store (online vs. offline), model versioning and rollback, monitoring (data drift, model drift, shadow mode deployments). i structured this as a pipeline: transaction event -> feature retrieval from online store (redis-like) -> scoring service -> decision engine with fallback rules. they were most interested in monitoring. how do you know your model is degrading before it costs millions?
coding. this was closer to SWE than some ML coding rounds i've done. one question was implementing a sliding window counter (relevant to the velocity features), and a second was writing a simple train/test split function without sklearn (i.e., show me you know what stratified sampling is and can code it). not super hard but you need to be fluent, not rusty.
behavioral. heavy on ownership and ambiguity. the question i remember most: 'tell me about a model you owned that underperformed expectations and what you did about it.'
comp. senior MLE offer was in the $190-215k TC range (base + bonus). i've heard staff-level can go higher but they seem to reserve that for candidates with deep domain in risk specifically.
net take: if you're an MLE coming from non-fintech, you can absolutely clear the bar, but spend time understanding why fraud ML has different trade-offs than, say, recommendation systems. it shows.