I build systems that don’t fall over — and I measure them.Ibuildsystemsthatdon’tfallover—andImeasurethem.
B.Tech IT @ IIIT Bhopal. Backend, distributed systems, and applied AI — raw TCP sockets, vector search, evaluation harnesses. Then I benchmark them until the numbers are real.
tests at 99% branch coverage — Product Intelligence Engine
9,619 ops/sec
C++ key-value store, single connection
4,831 ops/sec
sustained at 1,000 concurrent connections
410 ms
crash recovery of 10,000 keys, zero data loss
1,000+
DSA problems solved across platforms
01 / About
Systems I understand end to end
I’d rather ship one system I understand end to end than clone ten tutorials I don’t. That’s why I built a key-value store from raw TCP sockets instead of reaching for Redis, and why my RAG pipeline has an evaluation harness instead of a demo that looked right once.
Currently a B.Tech IT student at IIIT Bhopal, building multi-modal search infrastructure and studying distributed systems. Most of what I know came from breaking things at 2am and reading the syscall docs afterward.
The through-line across everything on this page is measurement. A system that works is a claim; a system with a benchmark, a coverage gate and a recovery test is a result. I would rather publish the number that disappoints me than the adjective that doesn’t.
Education
B.Tech, Information Technology
IIIT Bhopal
Period
Aug 2023 – Jun 2027
CGPA
8.43 / 10
02 / How I work
Three bugs that changed how I build
Not lessons from a blog post. Each of these is a specific thing that went wrong in a system on this page, what it cost to find, and what I do differently now.
01 / 03
Measure, don't assume
I fused two embedding spaces by normalising and blending their scores. It worked — which was the problem.
Whichever modality had the tighter score distribution silently dominated every ranking, and nothing in the output showed it. I caught it spot-checking results I had no reason to distrust.
02 / 03
Make the seam observable
The bug wasn't in any component. Retrieval worked. Embeddings worked.
It lived in the seam between them, and stayed invisible until I built decision traces that made the seam observable.
03 / 03
Refuse, don't guess
When there aren't enough comparable products, pricing declines to estimate and says why.
A confident wrong answer is worse than no answer.
03 / Projects
Five systems, built and benchmarked
Each one started with a problem I could not solve by installing something. Every card opens onto the architecture, the decisions worth defending, and the measured numbers.
Featured1,327 tests · 99% coverage
Multi-Modal Product Intelligence Engine
Keyword search misses the photo and image search misses the description, so neither can explain why two listings are the same product.
Hybrid image + text search over Qdrant, reranked by a cross-encoder
Duplicate detection across 3 tiers with an explainable verifier
1,327 tests · 99% branch coverage · CI on every push
01/11Live catalog activity, pipeline throughput, system health
Python 3.12
FastAPI
Qdrant
Redis
CLIP
BGE
Sentence Transformers
Docker Compose
Prometheus
pytest
Next.js 15
TypeScript
Playwright
Live
A RAG demo that answers one question well proves nothing — without a scoring harness, every change is a guess.
Hybrid FAISS + BM25 retrieval fused by Reciprocal Rank Fusion at k=60
Evaluation harness written before any tuning, not after
289 tests · 87% coverage · live on EC2 behind Docker and Caddy
Python
FAISS
BM25
FastAPI
Sentence Transformers
Read the engineering
Installing Redis teaches you Redis — not what it costs to hold a thousand connections, keep a shared map consistent, and survive a SIGKILL.
Raw TCP sockets, edge-triggered epoll, thread pool at 1,000 connections
9,619 ops/sec single connection; 4,831 at 1,000 concurrent
10,000 keys recovered in 410 ms after SIGKILL, zero data loss
C++20
TCP sockets
epoll
POSIX threads
Write-ahead logging
Read the engineering
Live
Optimisation is slow enough to time out a request, and the market-data API it depends on will eventually fail.
Optimisation runs offloaded to a Redis job queue — requests return at once
Dead-letter queue with a retry endpoint for failed jobs
163 tests behind an 80% coverage gate enforced in CI
Python
FastAPI
React
TypeScript
Redis
Read the engineering
Live
An order is only really paid when the payment processor says so — not when the browser comes back from checkout.
15+ REST endpoints with JWT/Bcrypt auth and role-based access control
Stripe webhooks for real-time order-state consistency
3 indexed MongoDB collections behind a component-based admin dashboard
Node.js
Express.js
MongoDB
React
Redux
Read the engineering
04 / Competitive programming
Problems solved under a clock
Contest programming is where I keep complexity analysis honest — you either found the right bound or you timed out. Every rating below links to the live profile it came from.
Grouped by the layer of the stack they belong to, not by how impressive the list looks. Each group opens to the full set.
Languages
5
C/C++ (C++20)
Python
TypeScript
JavaScript
SQL
Distributed Systems
10
TCP/IP sockets
epoll
Multithreading
Thread pools
Readers-writer locks
Backend
10
FastAPI
Node.js
Express.js
REST API design
Async job queues
AI & Retrieval
12
RAG
LangGraph
LLM tool calling
Qdrant
FAISS
Frontend
8
Next.js
React
Redux
TypeScript
Tailwind
Infrastructure
10
Redis
PostgreSQL
MongoDB
Docker
Caddy
Core CS
6
Data structures & algorithms
Complexity analysis
OOP & design
Operating systems
DBMS
06 / Experience
Where the work has been paid for
AI/LLM Engineering Intern
Neura AI
Jan 2026 – Mar 2026
Built a LangGraph state machine of 4 nodes driving the agent's control flow.
Exposed 5 internal tools through LLM tool calling, with the backend executing every function rather than the model touching anything directly.
Held agent state across PostgreSQL and Redis, so a conversation survives a process restart.
Enforced Pydantic validation at the model-to-application boundary — the one place where an LLM's output stops being text and starts being a function argument.
Shipped the service under Docker.
Competitive Programming Member
CODÂME, IIIT Bhopal
Nov 2024 – Sep 2025
Led 10 workshops on data structures, algorithms and complexity for 120 first-year students.
Peer-reviewed 15 contest problems with 3 team members.
Contributed to a 65% increase in club outreach.
07 / Contact
Let’s talk
Open to SDE and AI engineering internships. I reply to everything.