Data analyst portfolio
Three data problems,
worked end to end.
I'm a data analyst who works across the full pipeline — raw files and SQL at one end, a dashboard someone actually opens at the other. Python, SQL, Power BI, Tableau, and a locally-run LLM, applied to retail revenue, lending risk, and inventory data.
Noida, India · Open to relocation · Available to join immediately
Curious by nature. Analytical by training.
I graduated with a B.Tech in Computer Science in 2023 and I'm building my career in data analytics. I like connecting the technical work — cleaning data, writing queries, building models — to the actual business question it needs to answer.
I currently hold a contract role at Innodata evaluating AI-generated dashboards, charts and reports for accuracy — which has made me considerably more careful about the details in my own work.
I'm looking for a Data Analyst or BI Analyst role where I can contribute with SQL, Python, Excel, and BI reporting that people actually use.
Explore my GitHub-
01
Start with the business question
Define what matters, who needs the answer, and which metrics will help.
-
02
Make the numbers trustworthy
Validate the data, document assumptions, and reconcile results across tools.
-
03
Make the insight usable
Build clear dashboards and explain the decisions the analysis can support.
What I work with
Pulled straight from the tools actually used across the three projects below — nothing listed here that isn't demonstrated in a repo.
Languages & querying
BI, visualization & modeling
Data engineering
Applied methods
Retail analytics · Python, Snowflake, Tableau, local GenAI
Customer Revenue & Retention Analytics
Using the public UCI Online Retail II dataset from a UK-based online retailer, I asked which customers actually drive revenue, how much cancellations cost, and whether first-time buyers come back. The project analyzes 1,033,036 cleaned transactions from December 2009 through December 2011 to answer it.


What this shows
- Built a 3-layer Snowflake warehouse — RAW, STAGING, ANALYTICS — and reconciled row counts and revenue totals across every layer before building a single dashboard.
- Ran RFM segmentation on 5,852 identified customers; the "Champions" segment is 24.74% of them but generates 74.04% of identified-customer net revenue.
- Built monthly cohort retention curves — retention drops sharply after month 1, then stabilizes near 20-23% through month 12.
- Classified 4,725 products into 12 categories using a locally-hosted LLM (Qwen3:4B via Ollama), so no transaction data left the machine and no paid API was needed.
Credit risk analytics · Power BI, Power Query, DAX
Loan Default Risk Analysis
A single blended default rate hides where the risk is. Using a public loan-default dataset, this dashboard asks which borrower segments carry the most risk and how much loan value that risk represents, breaking down 255,347 loans by credit score, income, employment, interest rate, and dependent status.




What this shows
- Modeled a dedicated date table, a centralized measures table, and time-intelligence DAX (YTD, YoY) rather than relying on flat aggregates.
- Built a field-parameter so one visual pivots between co-signer, mortgage, and dependent status without duplicating pages.
- Used a decomposition tree so a viewer can investigate defaulted exposure by any borrower characteristic themselves.
- Separated default rate (by loan count) from defaulted amount share (by loan value) — the two disagree by 1.5 points, which changes which segments actually matter for exposure.
Inventory analytics · SQL Server, MySQL, Power BI
Inventory Demand & Supply Analysis
Before this could be a Power BI story, it was a data-trust problem: could the inventory data even be relied on? The project validates the data first, migrates the reporting pipeline from SQL Server to MySQL, then quantifies exactly where shortages are costing revenue.



What this shows
- Caught a real referential data-quality issue — two product IDs in production data that didn't exist in the product master — and followed a documented detect → investigate → escalate → confirm → correct → validate workflow before touching the report.
- Migrated the entire reporting pipeline from SQL Server to MySQL, reapplied every data-quality correction, and re-validated that the numbers still matched.
- Modeled fulfillment rate, revenue at risk, and value fulfillment rate as DAX measures, not simple row counts.
- Showed that the products with the highest unfulfilled demand aren't always the ones with the highest revenue at risk — shortage quantity and financial exposure need to be prioritized separately.
Compare the work
The same skill set applied three different ways — one on the Microsoft BI stack, one on cloud warehousing plus Tableau, and one bridging both.
Click a project name to isolate what it actually used.
| Skill / technique | Revenue & Retention | Loan Default Risk | Inventory |
|---|---|---|---|
| Python & Pandas | ✓ | — | — |
| SQL (Snowflake / SQL Server / MySQL) | ✓ | — | ✓ |
| Power BI & DAX | — | ✓ | ✓ |
| Tableau | ✓ | — | — |
| Cloud data warehousing (RAW/STAGING/ANALYTICS) | ✓ | — | — |
| Database migration | — | — | ✓ |
| Local GenAI / LLM classification | ✓ | — | — |
| RFM & cohort retention analysis | ✓ | — | — |
| Production data-quality remediation | — | — | ✓ |
| Excel | — | ✓ | — |
At a glance
| Project | Business question | Dataset | Primary tool | Headline result |
|---|---|---|---|---|
| Revenue & Retention | Who drives revenue, and who comes back? | UCI Online Retail II (public) · 1,033,036 transactions, 5,852 customers | Snowflake + Tableau | 72.35% of identified customers are repeat buyers, driving 96.74% of identified-customer sales |
| Loan Default Risk | Which borrower segments actually carry default risk? | Public loan dataset · 255,347 loans | Power BI + DAX | 11.61% default rate overall, up to 19.71% in the riskiest segment |
| Inventory Demand & Supply | Where does unmet demand become a business risk? | 99 product-level inventory records | SQL Server → MySQL + Power BI | $97.37K in revenue at risk identified down to the SKU |