Cloud, DevOps and platform engineering — AWS and GCP, Kubernetes, infrastructure as code, CI/CD, observability. Multi-account cloud platforms, container orchestration, and the data and ingestion layers underneath them.
The same work applied to ML systems — pipelines, feature contracts, model promotion, serving, drift monitoring. And the question those systems exist to answer, which is not what will happen but what to do about it: which feature has earned the right to be seen, what an intervention actually caused, which price to offer when nobody has told you the answer. Consumer credit and payments, for now.
Most of it is commercial and not public. This is the part that could be.
A feature contract carries an ad-hoc human decision — which columns a model may see — into a pipeline that reruns without one, and the scoring job refuses to start when the file on disk disagrees.
ieee-cis-fraud-detection-eda — the analysis. R, one question per notebook, every verdict a test with an interval rather than a threshold on a point estimate. Two CSVs from Kaggle and it runs.
fraud-detection-mlops — the pipeline. Dagster over BigQuery, LightGBM, Vertex AI, Cloud Run Jobs, OpenTofu. Temporal aggregates cut before the transaction they describe, with leakage blocked by a test rather than by convention; promotion a gate rather than a judgement call.
bqml-vs-custom-training — another fraud dataset, trained two ways for comparison: gradient boosting in a container, and a model written as SQL that never leaves BigQuery.
A limit increase goes to the customers a lender already trusts, so the correlation says the opposite of the truth. Same for any price or discount set by someone already watching the outcome.
fixed-effects-vs-ols — what changes when you stop comparing accounts with each other and start comparing each account with itself. Kaggle's Home Credit panel, R and fixest.
staggered-did-sunab — limits go up in different months, so a two-way fixed effects event study quietly compares treated accounts against other treated accounts. Goodman-Bacon to see it, Sun and Abraham to fix it.
A price is a decision and an experiment at the same time, and the experiment is paid for in margin. There is no separate budget for finding out.
pooled-vs-independent-bandits — a provider prices instalment plans per risk band, one checkout at a time. Should a band start from what the other bands already learned? Thompson sampling, empirical Bayes, R and Quarto.
bandit-fundamentals — the bench where the mechanisms get taken apart. Epsilon-greedy, UCB1 and Thompson sampling written from scratch in Python against one fixed toy market.
Public datasets and a simulator.

