I'm Taimoor Ali. Every commercial question is a decision in disguise — and I build the systems that make them: the analytics that find the lever, the models that pull it, and the products that ship. A deployed car-pricing tool, a forecast-driven energy trading optimiser, an operations simulation for a police force — different domains, same discipline.
About
I work at the intersection of commercial strategy and applied data science — currently at TikTok in London, and before that four years in growth, marketing and e-commerce analytics across fintech and marketplace clients, building the SQL, Python and BI layers that good decisions sit on.
What makes me unusual is that I don't stop at the recommendation. I build the whole loop — measure the problem, model it, make the decision, ship the system that keeps making it. Sometimes the shipped thing is a standing growth programme. Sometimes it's a deployed ML product, an optimiser trading against a power market, or a simulation that settles an operations debate. The leaderboard below ranks that work — each row is the same loop applied to a different decision.
Selected work
My work, presented as a leaderboard — because ranked, expandable and slightly competitive is how I like my information. Each row is a decision system, tagged by the decision it powers, and every one opens into a full case study with the charts, numbers and trade-offs.
Scraped 59,473 PakWheels listings with a Python/Playwright pipeline built around search cards rather than detail pages, then ran a structured cleaning and canonicalisation layer — Civic generations, missing-zero prices, mileage placeholders — down to 58,583 training-ready rows.
Benchmarked ten model families against a ridge baseline on a stratified holdout plus 6-fold CV. LightGBM on log price won at 7.31% MAPE — and I deliberately rejected a higher-scoring feature set because its extra signal wasn't something a real user could enter.
Exported the model to a static JavaScript bundle that runs fully in the browser — no backend — returning an estimate, an expected deal price, a calibrated 90% range, and a confidence label. Live and public.
Wind output is variable and UK power prices are volatile, so renewable assets leave money on the table. I built the data layer from ERA5 meteorology and ENTSO-E market prices, with physics-grounded wind-power features.
Benchmarked four deep-learning architectures per task — CNN-LSTM won price forecasting, MLP won wind — then fed the forecasts into a mixed-integer optimiser deciding store / sell / discharge / idle each hour, with degradation costs and efficiency losses priced in.
+7.13% average revenue uplift over the sell-everything baseline, peaking at 161% in high-volatility windows — a quantified link from forecast quality to commercial value.
DNA results inside 48 hours materially raise arrest probability — but staffing, machines and shifts all cost money. I modelled the forensics pipeline as a queueing system, tracking every sample's time in each queue and activity.
Built six operating scenarios in Simul8 — from current process to full 24/7 operation — ran 5,000 trials each, found the real bottlenecks (sequencer batching, CSI shift coverage), and priced each scenario with Monte Carlo ROI in arrests per £m.
A defensible recommendation: the mid-tier scenarios delivered the best cost-benefit trade-off while reliably hitting the 48-hour target — evidence in place of an operations argument.
Six assets of Bloomberg daily data — tech equities, a bank, a bond ETF, a currency-converted index — cleaned, FX-adjusted and resampled to monthly returns, plus a synthetic risk-free savings asset.
Simulated 10,000 portfolios to trace the efficient frontier and select the max-Sharpe allocation, then estimated 1-month 95% VaR three ways: Normal (7.60%), GARCH(1,1) with time-varying volatility (7.74%), and Monte Carlo (10.56%).
The spread between methods is itself the finding: model choice changes the risk number by nearly 3 points of portfolio value — exactly the kind of assumption a decision-maker needs surfaced, not buried.
800 apps across Germany, the UK, China and Japan — revenue, downloads, active users, rank, update cadence and monetisation flags, log-transformed for clean elasticity readings. Caught a degenerate variable (100% IAP adoption) before it could fake a finding.
OLS with robust standard errors (R² 0.65): engagement beats acquisition (0.32 vs 0.26 elasticity), a rank place costs ~0.7%, and an interaction model shows the engagement payoff is 3× larger in Germany than China. A wrong-looking updates coefficient resolved into an inverted U via a quadratic term.
Full diagnostics — Breusch–Pagan, VIF, residual analysis — plus a professional report and market-by-market recommendations. Original in Stata; every number independently reproduced in Python.
Experience
Writing
The scraping strategy, the cleaning war stories, why I rejected a higher-scoring model, and how the estimator ships as pure JavaScript.
Energy · Deep learningRenewables made prices wild. Deep-learning forecasts + a battery optimiser turn the volatility into revenue — with the physics, the models and the honest caveats.
Operations · SimulationSix operating scenarios, 5,000 trials each, and how a queueing bottleneck nobody suspected drove the recommendation.
Risk · Quant financeNormal VaR says 7.6%. GARCH says 7.7%. Monte Carlo says 10.6%. The gap between them is the real lesson.
Growth · EconometricsEngagement vs acquisition, priced. Plus the coefficient that looked wrong, was wrong, and became the best finding in the project.
Skills
Contact
Growth, marketing or product analytics; analytics management; strategy & operations; data science — if the role sits anywhere on the loop from measurement to shipped decision, I'd like to hear about it. Based in London, open to hybrid and on-site.
taimoorkh010@gmail.com