Finished IBM's MLE loop a few weeks ago. Role was on the Watsonx platform team, so there was some IBM-specific context baked in, but most of the signal areas are general MLE.
Quick structure: recruiter screen, then 4 rounds over two days (virtual onsite equivalent).
ML fundamentals (60 min). Lots of ground covered here. Questions ranged from gradient descent variants and regularization (L1 vs L2 with intuition, not just formula), to 'how would you handle severe class imbalance in a production classifier.' One gotcha: they asked about model drift and how you'd detect it in a system that's been deployed for a year. That's more MLOps than pure ML, so know both sides.
Coding round (60 min). Two problems. First was a medium LC array/hash problem. Second was ML-flavored: implement a k-nearest-neighbors classifier from scratch using only NumPy. Clean and readable code mattered more than fancy tricks. I got a follow-up about time complexity.
System design for ML (60 min). This is where IBM's Watsonx context came through. They asked me to design a document classification pipeline for enterprise customers. Scale was 'millions of documents, tens of thousands of users, latency matters.' We talked training vs inference separation, feature stores, model versioning, A/B testing infra, monitoring. The interviewer pushed hard on 'what breaks at scale' which I liked.
Behavioral (45 min). Standard but thorough. STAR-format. Emphasis on cross-team collaboration and how I've handled disagreement on model choices. One question I hadn't prepared for well: 'tell me about a model you shipped that underperformed and what you did.' Have a real answer for that.
Observations: IBM's MLE interviews lean more on breadth across ML + MLOps than deep algorithm coding. The LLM/GenAI angle came up but it wasn't the whole interview. Good signal for people who've worked on deployed production systems, not just Kaggle.