Resume ML Project Deep Dive: Loss, Training Data, Features, Architecture, Cold Start
Company: Snapchat
Role: Machine Learning Engineer
Category: Machine Learning
Difficulty: medium
Interview Round: Technical Screen
Choose a machine learning project from your resume. The interviewer drills into it in detail and asks, in turn, about the loss function, how the training data was generated, the features, the model architecture, and how cold start was handled. Answer each part with the specifics of your project and the reasoning behind each choice.
### Clarifying Questions
- Should I focus on the project most relevant to this team, or on the one where I owned the most decisions?
- How should I answer for parts that teammates owned rather than me?
- If my project had no cold-start problem, should I explain why, or describe how I would handle one?
### Part 1 — Loss function
What loss function did you train with, and why that one?
```hint Tie the loss to the decision
Connect the loss to how the model's output is used downstream, and be ready to say what would have gone wrong with the most obvious alternative.
```
#### What This Part Should Cover
- The exact loss, and how it matches the prediction target and the way the output is used
- How class imbalance or sampling affected the loss, and whether predictions needed calibration
- Alternatives considered, and the offline metric that showed the choice worked
### Part 2 — Training data generation
How did you generate the training data?
```hint Where each label came from
Be ready to say which logged event became a positive, which became a negative, over what time window, and what that choice could leak or bias.
```
#### What This Part Should Cover
- The source of the examples and the exact labeling rule, including the label window
- How negatives were selected or sampled, and the biases that introduces
- Point-in-time correctness and a time-based split between training and validation
### Part 3 — Features
Which features did you use?
```hint Name it, compute it, serve it
For any feature you mention, be ready to explain how it is computed, how fresh it is, and whether the model sees the same value at serving time as in training.
```
#### What This Part Should Cover
- The main feature groups, with concrete examples and why each carries signal
- Freshness, and consistency between training and serving
- How the value of individual features was measured
### Part 4 — Model architecture
What was the model architecture, and why?
```hint Start from the baseline
Explain what a simpler model scored, and what specifically the chosen architecture handled that the simpler one could not.
```
#### What This Part Should Cover
- The architecture's components and how inputs flow to the outputs
- The baseline it was compared against, and the measured gain
- Constraints that shaped it: latency, model size, training cost
### Part 5 — Cold start
How did you handle cold start?
```hint Two different cold starts
Treat new users and new items separately, and say what signal the model has for each before any interactions exist.
```
#### What This Part Should Cover
- Signals available for new users and for new items before any history exists
- How exploration gathers data quickly without hurting the experience too much
- How cold-start performance was measured separately from the overall metric
### What a Strong Answer Covers
- Ownership: precise, first-person answers about decisions you made, with numbers
- Consistency across parts: the labels, loss, features and architecture serve one objective
- Awareness of leakage, bias and training-serving skew
- Trade-offs and alternatives for each decision, not just a description of what was built
- Evaluation offline and online, including segments such as new users
### Follow-up Questions
- If you had to cut your feature set in half, which features would you keep, and how would you decide?
- Your offline metric improved, but the online metric did not move. What are the likely causes?
- How would you detect training-serving skew in this project?
Overview: A machine learning engineer phone-screen deep dive on a project from your resume, probing the loss function, how the training data was generated, the features, the model architecture and how cold start was handled. It tests whether you understand and can justify each modeling decision you made.