Skip to content

Weight Your Wage

Salary prediction for developers from the Stack Overflow survey, run as a full pipeline from raw data to a public web app. The model is a deliberate baseline; the work is the pipeline around it.

ROLE
Team of 5 · 42AI AI Lab
STACK
Python · PyTorch Lightning · MLflow · FastAPI · PostgreSQL · MinIO · Cleanlab · Docker Compose · Grafana · Next.js
RESULT
Deployed and public. No accuracy claim: the model is a placeholder by design.
READING TIME
1 min read
1

Data

Stack Overflow Developer Survey 2025.

2

What I built

Team of 5

  1. My commits went mostly to the model training code (PyTorch Lightning, MLflow), the FastAPI service, the Docker Compose setup and the monitoring dashboards.
  2. I built the Next.js web front end alone, in a separate repository.
raw survey
MinIO
ETL
PostgreSQL
clean labels
Cleanlab
train · Huber
Lightning · MLflow
serve
FastAPI jobs
web app
Next.js
monitoring — Grafana · Prometheus · Loki
Fig. 1 — Pipeline as implemented in the repo. Stages outlined in accent are where most of my commits went.
3

Key choices

Huber loss
Less sensitive than squared error to the extreme salaries found in survey answers.
Cleanlab before training
Flags survey rows whose labels look wrong before the model sees them.
Predictions as async jobs
The API returns a job and the web app follows its progress instead of blocking on the model.
4

Results

Deployed and public. No accuracy claim: the model is a placeholder by design.

5

Limits

  • The model is a placeholder: the project measures the pipeline, not prediction quality.
  • One survey year.
  • The prediction API is currently offline; the web app still loads.

Questions about this project? → Email me