Machine learning & data science

Train and evaluate classical ML models

Scikit-learn workflow: features, train/test split, cross-validation, metrics, overfitting.

~40 focused hours·intermediate

Tools: scikit-learn, pandas, NumPy, XGBoost, Jupyter

What employers mean

You should be able to…

  1. Load and clean a tabular dataset (missing values, outliers, encoding categoricals)
  2. Engineer features and build a scikit-learn Pipeline that doesn't leak test data
  3. Do a correct train/validation/test split and k-fold cross-validation
  4. Train and compare a linear model, a tree, and a boosted model (XGBoost/LightGBM)
  5. Pick and justify the right metric (accuracy vs precision/recall/F1/AUC/RMSE) for the business problem
  6. Diagnose overfitting vs underfitting from learning curves and fix it
  7. Tune hyperparameters with GridSearchCV/RandomizedSearchCV or Optuna
  8. Explain feature importance / SHAP values to a non-technical stakeholder

Needs first: Write production-quality Python for AI work

Learn — free, link-checked

The few resources that matter

Read · beginner · 25 min · scikit-learn.org

Getting Started

The canonical Pipeline/GridSearchCV/metrics pattern straight from the library docs -- copy-correct code beats half-remembered tutorials. — scikit-learn
Course · beginner · 180 min · kaggle.com

Intro to Machine Learning

Hands-on, notebook-based: train your first scikit-learn model and submit to a Kaggle competition the same afternoon. — Kaggle Learn
Watch · beginner · 500 min · youtube.com

Machine Learning

Clear, visual explanations of bias/variance, regularization, trees, boosting and metrics -- the intuition interviewers probe for beyond sklearn API calls. — StatQuest with Josh Starmer
Course · beginner · 600 min · developers.google.com

Machine Learning Crash Course

Google's own intro course with interactive exercises on loss, gradient descent, generalization and overfitting -- the vocabulary every ML interview opens with. — Google for Developers
Course · intermediate · 240 min · kaggle.com

Intermediate Machine Learning

Covers missing data, categorical encoding, pipelines, cross-validation, XGBoost and leakage -- exactly the practical gaps freshers get caught on in interviews. — Kaggle Learn
Practice

NBFC loan default risk model

Use a public Indian/Kaggle credit dataset (e.g. LendingClub or a similar loan dataset) to predict default risk for an NBFC-style personal loan book. Build a full scikit-learn pipeline with feature engineering, handle class imbalance, compare logistic regression vs XGBoost, and report ROC-AUC and a cost-weighted metric instead of raw accuracy since defaults are rare.

Done when
  • Pipeline object (not manual steps) handles preprocessing + model, no leakage from test fold
  • At least 2 models compared with cross-validated metrics reported in a table
  • Class imbalance explicitly addressed (class weights, SMOTE, or threshold tuning) with before/after metrics
  • README explains which metric was optimized for and why, with a confusion matrix on the held-out test set
Prove it

Evidence a recruiter can check

  • Public GitHub repo with README showing the pipeline diagram and final metrics table
  • A short write-up (blog or notebook) comparing 2+ models with justified metric choice
  • Kaggle profile with at least one scored notebook/competition submission
  • Ability to explain, live, why a specific feature was engineered or dropped
Interview

Questions you'll get asked

  1. Walk me through your ML pipeline for [X] end to end -- what would you change if precision mattered more than recall?
  2. How do you detect and prevent data leakage in a training pipeline?
  3. Explain bias-variance tradeoff with an example from a project you built
  4. When would you choose logistic regression over a random forest, and vice versa?
  5. How do you handle a severely imbalanced dataset (e.g. 2% fraud rate)?
  6. What's the difference between L1 and L2 regularization, and when do you use each?
  7. How would you validate a model before it goes to production?
See where you stand for Machine Learning Engineer