ML Engineer · BS Data Science, IIT Madras · Building matri6
Models are easy. Products are hard. I build the second kind.
Dweep Shishodia — ML engineer. I take problems from raw data to a URL someone can actually open.
About
The matri6 thesis
Most ML work stops at a notebook with a good score in it. Mine stops at a deployed URL — every project listed on this page is live, containerized, or serving predictions to someone.
matri6 is the studio that holds that work: a parent brand under which products get built, branded, and shipped. Paleskies — AI product video generation for D2C brands — is its flagship, and it took runner-up at IIT Madras' Compassion-a-thon 3.0.
I'm currently a second-year BS Data Science student at IIT Madras (CGPA 8.0, Foundational Level complete) and a freelance ML engineer. Open to research assistantships, internships, and full-time roles.
Models are easy. Products are hard.
Toolkit
What I build with
-
Languages
- Python
- SQL
- Java
-
ML / Modeling
- PyTorch
- XGBoost
- LightGBM
- CatBoost
- Scikit-Learn
- Optuna
- SHAP
-
GenAI / NLP
- BERT
- FAISS
- RAG pipelines
- Seedance 2.0
- rembg (BiRefNet)
- OpenCV
- Pillow
- Gemini
- Groq
- Hugging Face
- Ollama
- Wan 2.2
-
Agentic AI
- LangChain
- LangGraph
-
Data & Compute
- Pandas
- Polars
- NumPy
- Matplotlib
- Seaborn
- EDA
- Feature Engineering
-
Ship & Deploy
- FastAPI
- Flask
- Streamlit
- Docker
- Supabase
- AWS
- Google Cloud
- Render
- Git
// Credentials
Certifications
Competition results, coursework, and issued certificates — with a verification link wherever one exists.
-
Award
Runner-Up — Compassion-a-thon 3.0
Startup prototype competition, second position for Paleskies. Judged on problem clarity, solution feasibility, and market potential.
-
Award
Finalist, Syngenta Hackathon — IIT Madras
For AgroNav, the agri-sales territory prioritization model listed under Projects.
-
Certificate
Claude Code 101
Course on building with Claude Code — agentic workflows, tool use, and shipping real software with an AI coding agent.
-
Coursework
Foundational Level — BS Data Science
Foundational Level of the BS in Data Science and Applications complete, at a CGPA of 8.0. Currently in the second year of the programme.
-
Certificate
DSA Certification
Certification in Data Structures & Algorithms from GeeksforGeeks.
Selected work
Seven things that shipped
Newest first. Open a row for the problem, the approach, and the result.
Paleskies AI product video generation for D2C brands — replacing studio shoots with video generated from a single product image.
- D2C brands pay studio rates and wait days for one product video — the cost and the turnaround are what stop most of them from shipping video at all.
- The backend is a single pipeline: background removal, preprocessing, reference-to-video generation, then Postgres and Storage persistence — containerized end to end.
- Runner-up at IIT Madras' Compassion-a-thon 3.0.
Personality Assessment AI Adaptive personality assessment making psychological self-insight affordable.
- 5,000 psychologist-authored questions, built by a two-person full-stack team.
- Adaptive question recommendation engine: BERT embeddings plus FAISS vector search choose the next question from response history and semantic alignment.
- Explainable report layer computes weighted sub-category contribution scores, so the output is readable rather than opaque.
Confidential client — no name, no logo, no live link.
Rizzing AI-powered dating conversation assistant — generates contextual reply suggestions using a multi-provider LLM pipeline and a behaviorally-learned personality model.
- Multi-provider LLM fallback architecture — Gemini, then Groq, then Cerebras — for cost efficiency and uptime resilience.
- A 7-axis personality inference engine models communication style — confidence, humor, boldness, sarcasm — from behavioral choices rather than self-reported surveys, via a silent weight-adjustment learning loop.
- Serverless backend on Supabase Edge Functions handles real-time LLM orchestration, Google OAuth plus email OTP auth, and conversation-state modeling — shipped as a combined web and Android (Capacitor) app.
AgroNav Territory prioritization for agri-sales reps — predicts whether a visit converts within 7 days so reps stop burning travel on dead leads.
- Test ROC-AUC
- 0.8141
- F1-macro
- 0.7256
- Engineered features
- 12
- Optuna trials
- 50
- Gradient-boosted ensemble over 12 engineered features, tuned across 50 Optuna trials and checked with SHAP so the model is learning route economics, not an artifact.
- Served from FastAPI on Google Cloud Run — a rep gets a ranked visit list, not a notebook.
StockSense Predicts daily sales for any of 1,115 Rossmann drug stores given store ID, date, promo status, and holiday flags, with optional recent sales history to improve accuracy.
- RMSE
- 768.34
- RMSPE
- 0.1198
- Found and fixed a target-leakage bug where rolling means included the current row — shifting the window corrected RMSE from an inflated 641 to an honest 768.
- Engineered 24 features — calendar, competition age, promo windows, per-store lag and rolling-mean sales — with a shared feature module across training and serving to eliminate train/serve skew.
- Time-based train/validation split, no shuffle, respecting temporal ordering.
- Graceful degradation: null lags on short history, 404 on an unknown store, 422 on a malformed payload.
- Handled cold-start latency on free-tier hosting with a health-check pre-warm and a 75s client timeout.
Attrition Assessment XGBoost model for people-analytics attrition risk scoring.
- FastAPI backend serving an XGBoost classifier, deployed on Render.
- Vanilla HTML/CSS/JS frontend built with Claude Code, deployed via GitHub Pages.
- 21-field intake form — demographics, role and assignment, compensation, self-reported satisfaction and engagement, work history — returns a modelled probability of attrition against a configurable 0.50 decision threshold.
- Frontend-backend API integration wired end-to-end.
SmartCart Turned an undifferentiated customer base into 4 actionable purchasing personas.
- PCA dimensionality reduction ahead of K-Means, so the clusters separate on real variance instead of on noise.
- Four personas a marketing team can act on — targeted campaigns instead of blanket messaging.
- FastAPI backend serving the clustering model, deployed on Render.
- Frontend built in vanilla HTML/CSS/JS with Claude Code, deployed via GitHub Pages.
- Segments a shopper profile — demographics, household, membership, category spend, purchase channels — into one of four behavioral clusters learned from 2,236 loyalty members.
Process
How the work goes
-
Understand the cost of being wrong.
Before any modeling, what does a false positive actually cost the person using this?
-
Build the boring baseline first.
A simple model that ships beats a complex one that doesn't.
-
Tune deliberately.
Optuna sweeps, honest validation, SHAP to check the model learned the real signal and not an artifact.
-
Ship it.
Containerize, deploy, hand over a URL. A model nobody can call isn't finished.
Contact
Let's build something that ships.
Open to research assistantships, internships, and freelance ML work.