Dev Mistri
Open to data analyst roles · UK

Dev Mistri, Data Analyst, Birmingham

I find the number that changes the decision.

Six analyses of problems real companies pay to solve: customers leaving, experiments that mislead, deliveries that wreck reviews. MSc Data and Artificial Intelligence, plus two years as a developer cleaning and querying production data.

dev_mistri=# SELECT * FROM profile;
roleData Analyst
based_inBirmingham, UK
educationMSc Data & AI, UWTSD
stackPython · SQL · Power BI
analyses6 published
rows_analysed887,389
  • 49.9%of churners found in the riskiest 20% of customers
  • −0.82pp7-day retention when the game gate moved to level 40
  • 36.7%of one-star reviews come from late deliveries
  • 45.3%of retail revenue from 14.1% of customers
  • 99.9% → 76.5%model accuracy once attacks are new
  • 8.5 yearsfor UK house prices to recover from the 1990s crash
Telecom · Customer retention

Who is about to cancel, and who to call first

Which customers are likely to leave, why, how much revenue is at stake, and where should a retention team spend its time?

01 / 06

Why it mattersSubscription businesses lose customers every month, and winning one back costs far more than keeping them.

Data
IBM Telco Customer Churn sample: a fictional US provider
Size
7,043 customers · 21 columns
Methods
Churn breakdowns, risk profile, logistic regression, decile lift
  1. Churn takes more revenue than customers. 26.5% left, taking 30.5% of monthly revenue ($1.67m a year).
  2. Contract is the biggest signal. Month-to-month churn is 42.7%; two-year is 2.8%.
  3. The first six months are the danger zone: 52.9% churn, against 9.5% after four years.
  4. One profile holds a third of the problem. Month-to-month fibre customers in year one are 13% of customers and 34% of churners.
  5. The model focuses the team. The riskiest 20% it flags contain 49.9% of the people who actually left (ROC AUC 0.844).
RecommendationOffer contract upgrades in the first six months, reward moving to automatic payment, and bundle tech support with fibre.

Fictional sample, single snapshot: associations, not proven causes.

Read the notebook →

Churn rate by time as a customer

Share of each group that left in the last month.

Actual churn by predicted risk decile

Held-out test customers, ranked by the model. Line shows the 26.5% average.

Mobile gaming · Product experiment

Did moving the paywall gate hurt retention?

Cookie Cats tested moving its first gate from level 30 to level 40. Should the change ship?

02 / 06

Why it mattersProduct teams ship changes every week. A test read wrongly can roll out a change that quietly loses players for months.

Data
Cookie Cats A/B test (Tactile Entertainment, via DataCamp)
Size
90,189 players · 2 groups
Methods
Sample ratio check, two-proportion z-test, confidence intervals, bootstrap
  1. Level 40 lost players. 7-day retention fell from 19.02% to 18.20% (−0.82 points, p = 0.002). The bootstrap gives level 30 a 99.9% chance of being better.
  2. Day 1 points the same way but isn't conclusive (p = 0.074).
  3. The split wasn't clean. 49.56 / 50.44 fails a chi-square check (p = 0.009): a sample ratio mismatch worth fixing before the next test.
  4. Data quality: one account logged 49,854 rounds in 14 days (likely a bot) and 4.4% of players never played.
RecommendationKeep the gate at level 30, and audit the assignment pipeline before trusting the next experiment.
Read the notebook →
Don't ship

About 820 fewer players still playing after a week for every 100,000 installs.

Retention by group, with 95% confidence intervals

Gate at level 30Gate at level 40

Test results

E-commerce · Operations

What late deliveries cost in customer reviews

How often do marketplace orders miss the promised date, how much does it hurt reviews, and where and when does it happen?

03 / 06

Why it mattersCustomers blame the marketplace, not the courier, and review scores drive future sales.

Data
Olist: Brazil's largest department-store marketplace, 2016–2018
Size
99,441 orders · 3 joined tables
Methods
SQL joins, CTEs, ROW_NUMBER(), lateness bands, trend and regional analysis
  1. Lateness wrecks reviews. Even 1–3 days late drops the average from 4.29 to 3.29 stars; 8+ days late averages 1.70.
  2. Small share, big damage. Late orders are 6.8% of deliveries but 36.7% of all one-star reviews.
  3. Estimates are padded and still missed. The typical order arrives 12 days early; the problem is the slow tail.
  4. Peaks break the network. Late rate hit 12.4% in Black Friday month and 19.0% in March 2018.
  5. Region matters. Maranhão is late 17.4% of the time; São Paulo 4.5%.
RecommendationSet promised dates by state and season, add courier capacity before peaks, and warn customers proactively when an order is running late.
Read the notebook and SQL →

Average review by how late the order arrived

1 to 5 stars. Hover for the share of one-star reviews.

Share of orders arriving late, by month of purchase

Show the SQL: one row per delivered order
WITH latest_review AS (
    SELECT order_id, review_score,
           ROW_NUMBER() OVER (PARTITION BY order_id
                              ORDER BY review_answer_timestamp DESC) AS rn
    FROM reviews
)
SELECT o.order_id, c.customer_state,
       JULIANDAY(DATE(o.order_delivered_customer_date))
         - JULIANDAY(DATE(o.order_estimated_delivery_date)) AS days_vs_estimate,
       r.review_score
FROM orders o
JOIN customers c          ON c.customer_id = o.customer_id
LEFT JOIN latest_review r  ON r.order_id = o.order_id AND r.rn = 1
WHERE o.order_status = 'delivered'
  AND o.order_delivered_customer_date IS NOT NULL;
Retail · Customer analytics

Where a UK retailer's revenue really comes from

How seasonal is the business, and which customers keep coming back?

04 / 06
Data
UCI Online Retail: a UK online gift retailer, Dec 2010 to Dec 2011
Size
541,909 invoice lines
Methods
Cleaning log, SQL aggregation, RFM segmentation, cohort retention
  1. Strongly seasonal. September to November brought in 37.2% of the year's revenue.
  2. Weekday trade only. No Saturday revenue at all; the peak is 10:00 to 16:00, Tuesday to Thursday.
  3. A small core carries it. Champions are 14.1% of customers and 45.3% of revenue.
  4. Win-back target: 602 at-risk customers spent £625k last year but haven't ordered for ~140 days.
Read the notebook and SQL →

Monthly revenue

Dec 2010 to Nov 2011. Hover a bar for orders.

RFM segments: share of customers vs share of revenue

CustomersRevenue
Show the cleaning log
Cybersecurity · Model evaluation

What a 99.9% accurate model is hiding

Which features reveal a network attack, and how well does a model catch attacks it has never seen?

05 / 06
Data
NSL-KDD benchmark (Canadian Institute for Cybersecurity)
Size
148,517 connections · 41 features
Methods
EDA, mutual information, random forest baseline, evaluation design
  1. The test set is a different problem. 16.6% of test traffic is attack types never seen in training.
  2. Accuracy misleads. 99.88% in cross-validation becomes 76.5% on the real test set.
  3. New attacks slip through. 76.8% of known attack types are caught, but only 22.0% of new ones.

Related to my MSc dissertation topic (hybrid intrusion detection), but a separate analysis. NSL-KDD is 1998 simulated traffic.

Read the notebook →
99.88%accuracy in 5-fold cross-validation
76.5%accuracy on the official test set

Share of test-set attacks detected

Property · Time series

UK house prices: 70 years of crashes and recoveries

How deep were past downturns, and how long did prices take to get back to their peak?

06 / 06
Data
Nationwide House Price Index, UK average, quarterly (open data)
Size
290 quarters · 1953 to 2025
Methods
Validation, drawdown detection, compound growth
  1. Validated first. Every published annual change matches a recalculation to within 0.1 points.
  2. Three downturns over 5%. Early 1990s: −20.2%, 8.5 years to recover. 2007–09: −18.7%, 6.8 years.
  3. The 2022 peak is still not regained as of mid-2025.

Nominal prices; deflating by CPI is the next step.

Read the notebook →

UK average house price (log scale)

Shaded: more than 5% below a previous peak, until recovered.

Downturns found by the drawdown algorithm

About me

I started as a developer, building APIs and data pipelines in Node.js, MongoDB and SQL for live client applications. Most of that work was about data: cleaning it, validating it and getting it to the people who needed it.

My MSc in Data and Artificial Intelligence at UWTSD Birmingham added statistics and machine learning. My dissertation focused on hybrid intrusion detection.

I want a data analyst role where I own a dataset end to end, from the raw export to the recommendation.

Skills

Analysis
PythonpandasSQLStatisticsA/B testing
Visualisation
Power BITableaumatplotlib
Machine learning
scikit-learnModel evaluationAnomaly detection
Engineering
Data cleaningMongoDBREST APIsGit

Experience

  • 2025 – 2026MSc Data and Artificial IntelligenceUniversity of Wales Trinity Saint David, Birmingham
  • Dec 2025 – Apr 2026Office AdministratorCornerstone Professional CareKept staff files and client care plans accurate and confidential.
  • Dec 2023 – Dec 2024Web DeveloperImpeto TechnologiesCleaned, validated and transformed client data; optimised SQL behind reporting.
  • Dec 2022 – Nov 2023Junior Full-Stack DeveloperUnada LabsBuilt REST APIs and optimised MongoDB queries for live applications.
  • 2021 – 2024BE Computer EngineeringSilver Oak University, Ahmedabad

Email me with one query

Fill in the blanks and run it. Your message goes straight into my inbox table, and I get an email the moment it lands.

dev_mistri — inbox
dev_mistri=#INSERT INTO inbox (name, email, topic, message)
VALUES (
'',
'',
'',
'-- your message
'
);
or press Ctrl / ⌘ + Enter
-- Waiting for your query.