I build AI systems that show their work.
RAG platforms · ML forecasting · full-stack products, tested and deployed
I'm a third-year B.Tech AI & Data Science student at VIPS-TC, New Delhi (GGSIPU, batch 2024–2028, CGPA 8.45).
I design, build and deploy AI applications end to end, from the database schema to the live URL. Every project below is a solo build with a live deployment, an automated test suite, and CI that runs on every push.
Experience: SDE Intern at Zomakarb AI Solutions LLP, New Delhi (Jul – Sep 2026). I built the company's internal RAG document assistant solo, end to end: document parsing, chunking and embedding, vector search with PostgreSQL and pgvector, and LLM answer generation behind a Next.js web app. I deployed it for internal use and presented it to the founders, and 3–4 team members used it for document lookups.
|
Which roads in flood-prone Assam will still be passable tomorrow?
A forecasting and relief-logistics system built on live government flood reports, satellite rainfall and terrain data.
Python FastAPI PostGIS OR-Tools Next.js MapLibre Docker
Live app · Code · |
|
Document Q&A that still works when a second team logs in.
A multi-tenant platform that answers questions from your own documents and checks every citation against its source.
TypeScript Next.js Supabase PostgreSQL pgvector Gemini Voyage AI
Live demo · Code · |
|
An early warning for counselors, before a student has to ask for help.
A three-minute wellness check-in for students and a risk dashboard for the counselors who support them.
Python scikit-learn Streamlit SQLAlchemy PostgreSQL Plotly
Live demo · Code · |
I measure before I optimise. Sending scanned pages to OCR in parallel looked like the obvious speed-up. Measured on a 23-page scan, it took 252 seconds against 34 seconds one batch at a time, so the pipeline runs sequentially. Engineering decisions in RAG Assistant →
I publish the results that don't flatter me. SetuNER grades every forecast against a baseline once the outcome is known, and its live track record is on the forecast page, including the stretch where it lost. Results, stated honestly →
I write down why. SetuNER has 18 numbered decision records, including the ones that record a failure, so the reasoning behind the system outlives my memory of it. Decision records →
I make the system fail safely. Burnout Buster refuses to save a model that fails any of its 8 sanity checks. SetuNER serves the baseline whenever the model loses to it.
| Languages | Python, TypeScript, JavaScript, Java, SQL |
| Backend | FastAPI, Spring Boot, Flask, Next.js API routes, REST |
| Frontend | React, Next.js, Tailwind CSS, Streamlit |
| AI and data | RAG, embeddings, LLM APIs (Gemini, Voyage AI), scikit-learn, Pandas, NumPy, OR-Tools |
| Databases | PostgreSQL, pgvector, PostGIS, Supabase, SQLite |
| Testing and delivery | pytest, Vitest, Playwright, GitHub Actions, Docker, Vercel, Render |
| AI-assisted development | Claude Code |
- Building Casewright: an AI security analyst that investigates incidents with tools, builds an evidence chain, and waits for a human before any risky action. Java + Spring Boot gateway done (Argon2 auth, rotating JWT refresh tokens, CI); the Python agent is next
- Looking for a software engineering or AI engineering internship in 2027: mohitks2609@gmail.com
Certifications: IBM SkillsBuild (Build an AI Agent, Craft Precise Prompts) · Anthropic Claude 101 · Forage job simulations (Deloitte Cyber Security, Tata GenAI Data Analytics)




