Machine Learning & Software Engineer · CSE @ NIT Sikkim

I build ML systems and
measure whether they work.

Retrieval and question answering, deep learning for vision and language, and applied ML built around the decision it supports, backed by Java and full-stack engineering and 180+ solved LeetCode problems. Every project ships with code, tests, CI and results on a held-out set.

0.88Recall@1 after cross-encoder reranking (up from 0.74)
78.3 F1end-to-end open-domain QA on SQuAD
-35%lending cost from cost-aware thresholding
93.1%Fashion-MNIST accuracy, 392K-param CNN

Machine learning projects

Each result below was measured on data the model never saw during training or tuning.

Hybrid retrieval + reranking QA

Answers questions over 2,067 Wikipedia passages and cites the passage it used. Each stage is benchmarked so every component has to earn its place.

Recall@1 0.74 → 0.88Recall@20 0.9978.3 F1 end-to-end
  • BM25 written from scratch on a sparse term-document matrix
  • Dense bi-encoder retrieval fused with BM25 by reciprocal rank fusion
  • Cross-encoder reranking of the top 20, then a sliding-window extractive reader
  • Loses only ~7 F1 versus a reader handed the gold passage
PyTorchTransformersSentence-TransformersSciPyInformation retrieval
question ├─► BM25 (from scratch) ─┐ │ ├─► rank fusion └─► dense bi-encoder ────┘ │ ▼ cross-encoder rerank (top 20) │ ▼ extractive reader (top 3) │ ▼ answer + source passage Recall@1 BM25 .784 dense .636 fusion .740 + rerank .884

Cost-sensitive credit risk scoring

A loan-approval model optimised for what the lender pays for: approving a defaulter costs 5x more than rejecting a good applicant.

cost 0.835 → 0.545 / applicantROC-AUC 0.81
  • Leak-free scikit-learn pipelines: logistic regression vs LightGBM
  • Probability calibration, then a decision threshold tuned on out-of-fold expected cost
  • Model and threshold chosen in cross-validation; test split used once
  • Permutation importance for explainability
scikit-learnLightGBMCalibrationpandas
ROC curves, calibration curves and expected cost against decision threshold

Residual CNN with Grad-CAM

A compact residual network built from scratch in PyTorch for clothing images, with heatmaps showing what drives each prediction and an analysis of where it fails.

93.05% test accuracy392K parameters
  • One-Cycle LR, label smoothing, checkpoint selection on a validation split
  • Batched tensor augmentation: shifts, flips, random erasing
  • Grad-CAM shows Shirt vs T-shirt errors come from ignoring collars and buttons
  • Flip test-time augmentation chosen on validation; CLI that classifies any image and saves its heatmap
PyTorchCNNExplainable AI
Grad-CAM heatmaps over Fashion-MNIST test images, including four misclassifications

Mini-GPT from scratch

Decoder-only Transformer in PyTorch: causal multi-head attention, positional embeddings, AdamW with cosine decay, top-k sampling.

PyTorchTransformers
Code →

ML model serving API

Containerised inference service: FastAPI routing, Pydantic validation, health and metadata endpoints, pytest suite, Docker.

FastAPIDocker
Code →

Intern Tracker

Full-stack internship and hackathon discovery platform: Next.js frontend, FastAPI backend with passwordless OTP login, rate limiting, audit logging and admin tools, on PostgreSQL. API test suite and lint run in CI.

Next.jsFastAPIPostgreSQL
Code →

Stego food pre-ordering

Backend for a restaurant pre-order platform: Spring Boot 3 and Java 17, JWT access and refresh tokens, Stripe payments with signed webhooks, WebSocket order updates, Flyway migrations on PostgreSQL, integration tests in CI.

JavaSpring BootPostgreSQL
Code →

Problem solving

Data structures and algorithms practice on LeetCode, as of October 2026.

184

problems solved

Easy121
Medium58
Hard5

View LeetCode profile →

Topics practised

Arrays & stringsDynamic programmingTrees & BSTGraphs (BFS/DFS)Binary searchSliding windowTwo pointersHashingStack & queue

The same habit I apply to ML work: write the simple version, measure it, then improve it.

Skills

What I use day to day.

Machine learning

PyTorchHugging Face TransformersSentence-Transformersscikit-learnLightGBMXGBoostNumPypandas

ML techniques

RAG & retrievalRerankingCNNsTransformersCross-validationCalibrationExplainability

Languages

PythonJavaC++SQLTypeScriptJavaScript

Engineering

FastAPISpring BootReact / Next.jsPostgreSQLDockerGitGitHub ActionsLinuxData structures & algorithms

About

I'm a Computer Science and Engineering student at the National Institute of Technology Sikkim. I like ML problems where the obvious metric is not the real goal: a retriever has to put the right passage first, and a credit model has to minimise lending losses rather than maximise accuracy. I care about evaluation that would survive a skeptical reviewer: held-out test sets, leak-free pipelines, tests and CI. I'm looking for ML / AI engineering and software engineering roles.

NIT SikkimB.Tech, Computer Science and Engineering, 2025 - 2029
8.3 CGPACurrent, out of 10
6 projectsEach with a README and GitHub Actions CI

Let's talk

Open to ML / AI engineer and software engineer internships and full-time roles.