Statistics degree from Cal Poly. Now I do product work at an AI adtech startup: discovery, scoping, shipping, and measuring whether it actually worked. I like problems where the math has to survive contact with real customers.

§1. Currently

§2. Selected Works

Newest first. Filter by type, click any entry to expand it.

The problem

Advertisers ask the same question after every campaign: did the ads cause the sales, or would those people have bought anyway? Most teams answer it with a one-off analysis that takes weeks and looks different every time.

What I did

I define and run holdout experiments to measure incrementality, and I automated the lift analysis so results ship to clients faster and read the same way every time. One-off measurement became a repeatable product capability. The lift calculator in the lab below runs on the same math.

RoleMember of Technical Staff
MethodHoldout experiments
OutcomeMeasurement as a product

The problem

CPG advertisers wanted to activate ML-built audience segments on The Trade Desk, and the platform did not connect to it yet.

What I did

Scoped the requirements, coordinated between engineering and the partner, and drove the integration through to live campaigns. I also own segment delivery end to end, from client requirements through segment build, activation, QA, and results readouts, plus the data flows and REST API integrations underneath. When something breaks, clients hear about it from us before they notice.

PartnersThe Trade Desk, LiveRamp
ScopeRequirements to live campaigns
RoleProduct and delivery

The problem

Plumbers, electricians, and other trades need a steady flow of leads, and none of them have time to learn Meta's ad platform.

What I did

Co-founded an ads agency for blue-collar trades. Owned the customer relationship end to end, from the first conversation through campaign delivery, and ran Meta lead-gen campaigns for local clients.

RoleCo-founder
ChannelMeta lead-gen
RanJan to Jul 2026

The problem

The sales team's tools did not talk to each other. Call data lived in Gong, deals in HubSpot, onboarding in RocketLane, and a lot of manual copy-paste held it together. Calls were not linking to the right contacts or deals, so nobody trusted the pipeline reports.

What I did

Found the bottleneck and shipped automated pipelines across all three tools, including matching Gong calls to the right HubSpot contacts and deals by email, contact ID, and deal association. Cut manual processing by about 40% and made the pipeline data trustworthy again.

RoleSales Engineer
Impact~40% less manual work
StackPython, APIs, HubSpot, Gong

The problem

Prospects do not buy from a slide deck. They buy when they see their own problem solved in front of them. And once deals are moving, leadership needs to see pipeline health without asking an analyst.

What I did

Ran discovery with startup and enterprise prospects, captured requirements, scoped solutions, and turned them into live demos and tailored POC environments. Defined and built executive dashboards for pipeline health, deal velocity, and conversion KPIs, then documented them so the team could self-serve. It is the same loop product managers run: listen, spec, ship, measure.

RoleSales Engineer
LoopDiscovery to live demo
OutputPOCs, KPI dashboards

The problem

Non-technical teams cannot migrate CRM data without pulling in engineers, so the data stays stuck wherever it landed first.

What I did

Built the fix solo: a unified API layer over siloed CRM, sales engagement, and billing data, with an LLM workflow that maps and migrates schemas. Zero to working product in about three weeks.

Type0 to 1 LLM product
BuiltSolo, ~3 weeks
StatusShipped

Visit

The problem

The wine trade runs on relationships and phone calls. The inventory data exists, but nobody was using it to match buyers and sellers.

What I did

Took a two-sided marketplace from requirements to launch as lead developer. Defined the feature set, built the full stack and the REST API integrations, used statistical modeling of buyer behavior to set pricing, and designed recommendation algorithms to keep both sides of the market active.

RoleLead Developer
TypeTwo-sided marketplace
ExtrasPricing models, recommenders

The problem

Enterprise clients were spending across Amazon Marketing Cloud, DV360, The Trade Desk, Meta, and TikTok with no clear picture of which channel was actually doing the work.

What I did

Analyzed campaign performance across all five platforms and built reports that improved ad spend efficiency. Built multi-touch attribution models and translated the findings into plain recommendations for people who do not want to hear about Markov chains.

RoleData Analyst Intern
PlatformsAMC, DV360, TTD, Meta, TikTok
FocusAttribution modeling

Plain English

Instead of a p-value, this gives a straight answer: there is a 97% chance the new checkout page is better, worth about $36k a year.

Under the hood

Beta-Binomial conjugate priors from historical data, analytical posteriors, and Monte Carlo simulation to estimate the probability the variant wins and the expected revenue lift.

MethodBayesian inference
P(B beats A)97.2%
Expected lift+$36k/yr

Full write-up

Plain English

Power companies need to know how much electricity people will use next year. Eight years of data, one model that catches summer AC spikes and winter heating.

Under the hood

Box-Jenkins methodology end to end: ADF stationarity tests, ACF and PACF identification, and a final SARIMA(1,0,1)(0,1,1)[12] that beat automated STL+ETS baselines.

ModelSARIMA
Test MAPE4.7%
Horizon12 months

Full write-up

Plain English

Medical statistics, repurposed: instead of predicting whether a customer cancels, predict when. Key finding: annual contracts cut churn risk nearly in half.

Under the hood

2,847 customer records, Kaplan-Meier curves to a Cox proportional hazards model, assumptions verified with Schoenfeld residuals.

ModelCox PH
Key findingAnnual cuts churn 47%
N2,847

Full write-up

Plain English

An automated appraiser: feed it thousands of houses and it predicts sale price, then explains which features added or subtracted value.

Under the hood

Six models under 10-fold cross-validation on the Ames dataset. Final XGBoost hit RMSE $16,840 with R² of 0.947, interpreted with SHAP values.

ModelXGBoost
RMSE$16,840
0.947

Full write-up

Plain English

Predict a wine's quality score from its chemistry alone, no tasting required. Alcohol and acidity do most of the talking.

Under the hood

PCA for dimensionality reduction, K-Means and hierarchical clustering, then Random Forest and SVM classifiers on Vinho Verde data. The Random Forest reached 82% accuracy.

MethodPCA & clustering
ModelRandom Forest
Accuracy82%

Full write-up

§3. Coursework

B.S. Statistics, Cal Poly San Luis Obispo, 2021 to 2025. Click a topic to see where it shows up above.

§4. The Lab

Statistics is better when you can poke it. Everything below runs live in your browser in plain JavaScript.

The Bayesian coin

This coin has a hidden bias. Flip it and watch the posterior distribution sharpen around the truth. Bayesian inference in one picture.

heads: 0   tails: 0
prior: Beta(1, 1), which is a polite way of saying no idea
posterior: Beta(1, 1) · mean 50.0%

Flip the coin and the flat gray prior starts turning into a belief.

A/B lift calculator

The same math behind my incrementality readouts at work. Enter results from any experiment and get the probability the variant actually wins, plus 95% credible intervals. Edit the numbers, everything recomputes.

control   variant  ·  dot = posterior mean, line = 95% credible interval

Graph anything

Type a function of x and it gets plotted. Hover the curve to read off values.

§5. Biographical Notes

Expand at your own pace.

The Foundation

I grew up Russian at home and American everywhere else. My parents immigrated from Russia, which meant a childhood with a strong accent in discipline, structure, and very strong opinions about education. In Seattle I played competitive chess, made it to state and nationals, and loved the strategy more than the trophies. Chess taught me to think several moves ahead, lose without panicking, and sit with uncertainty until a clearer position emerged.

Patterns & History

Despite years of Russian School of Math, I disliked math for most of my youth. It felt imposed rather than discovered. Meanwhile I devoured history books, not for dates but for patterns: empires rising and collapsing, incentives shaping decisions, small miscalculations compounding. I was already thinking analytically. I just preferred stories over symbols.

Grit & Creativity

I rowed crew in high school. Never the star, somewhere between below average and occasionally useful. But rowing taught me that progress is invisible day to day: you show up, suffer quietly, and the output compounds. On the side I taught myself to film and edit, producing videos for local music artists. Creative work, but also client management, deadlines, and shipping with limited resources.

The Click Moment

I entered university studying history, then something clicked: history and statistics are cousins. Both look at existing data, observe patterns, and make claims about what is likely true. History calls it interpretation. Statistics calls it an alternative hypothesis and pretends that is more serious. Once I saw that, math stopped feeling abstract. Statistics let me quantify the instincts I already had.

Today

The threads came together in product work: data, incentives, and human behavior in markets that historically run on intuition. If there is a consistent theme, it is that I rarely take the obvious path but I connect ideas well. Structure and creativity, rigor and narrative, numbers and people. Comfortable being a beginner, comfortable being wrong, very comfortable learning fast.