Vision, speech and retrieval models, built and run on-device.
ONNX Runtime, CLIP, YOLO, Whisper
I started in low-level systems , where one wasted byte matters. Now I bring that discipline to machine learning : models that run on-device, stay fast, and never need the cloud.
2 yrs
Production C/C++ at Enphase Energy
98% to 82%
RAM on a deployed device fleet after a data-flow redesign
10 ms
Budget for ML risk scoring in Visa's transaction pipeline
Where I have shipped
Two years of full-time engineering at Enphase, plus internships in on-device inference, fraud infrastructure and device cloud.
Model graph / GPU + NPU routing
Summer 2026
Internship
Qualcomm
AI Software Intern, San Diego, USA
Model graph / GPU + NPU routing
Worked on a heterogeneous on-device inference runtime that co-executes model workloads across the GPU and the Hexagon Tensor Processor (HTP) in one end-to-end pipeline.
Wrote Python benchmarking and profiling harnesses that scored every change on latency before it shipped, and evaluation harnesses that compared GPU, HTP and CPU-baseline results.
Reduced latency by tuning data movement and synchronization between backends under on-device memory and power limits.
Worked on graph partitioning and cost-aware backend selection that routes operators to the faster accelerator, with C++ contributed to Qualcomm's ExecuTorch backend.
Built the full software stack for a new metering device from scratch, from the OS up to the application that sends data across a device network. Shipped to deployed hardware.
Cut RAM from 98% to 82% and storage by 20% across a deployed fleet by redesigning data flow and memory layout: in-place processing, flat arrays, stale-entry eviction and tighter Protobuf layouts.
Handled unreliable wireless links with retries, acknowledgements and bounded buffers, and fragmented messages to fit small frames.
Maintained multithreaded C/C++ services for battery and microinverter products, with priority-based scheduling, mutexes and message queues.
C / C++ / Zigbee / CAN / Protobuf / Zephyr
May 2022 - Jul 2022
Internship
Visa Inc.
Software Intern, Bangalore, India
Card tap / transaction scoring
Built sub-10 ms ML scoring for transaction risk in a production pipeline handling millions of transactions daily, with monitoring, guardrails and safe fallbacks.
Hit the budget with real-time-only features, precomputed normalization constants and lightweight tree-based models, after profiling every stage of the request path.
Wrote Go and Java microservices that automated model onboarding, saving 2 weeks of engineering time per model configuration.
Centralized alert and model config from scattered YAML files into one MySQL database with a normalized schema.
Go / Java / Python / Kafka / Spark / Hadoop / MySQL
Jun 2021 - Dec 2021
Internship
Oqlo.ai (3rdi Corp)
Cloud Intern, California, USA (remote)
Cloud / encrypted device commands
Built backend automation for a mobile device management product, delivering commands to devices over Firebase Cloud Messaging.
Implemented AES-256 encryption for data at rest on AWS S3 and in transit over HTTPS/TLS, with SHA-256 and HMAC checks on data streams.
Designed dynamic scaling with AWS Auto Scaling and an Azure Load Balancer, plus queues, connection pooling and database sharding to hold real-time performance at peak demand.
Tap Run to watch it work, or tap a step to see what it does.
A proof of concept that runs vision, speech and language models entirely on-device, on Qualcomm Snapdragon hardware through ONNX Runtime and the QNN provider, with CPU fallback. Three lenses: face ID that learns names from audio, zero-shot scene captions, and an object memory you can query in plain English.
Each character is its own tone. Sound plays quietly through your speakers.
Sends text and voice between devices over sound, with no network, server or Bluetooth. FSK encodes characters as tones, the receiver decodes them with an FFT, and devices relay messages to form a mesh. Whisper runs in the browser for voice to text. Measured about 6 characters per second over 3 to 10 m indoors, with 95%+ reliability in quiet rooms.
React / TypeScript / Vite / Tailwind CSS / Web Audio API / Transformers.js / FSK
HPC course project
VecScale
Distributed vector search in C++
Tap Run to watch it work, or tap a step to see what it does.
A distributed top-k vector search system. The corpus is sharded, parallel workers search their shards, and results merge into a global ranking scored against an exact baseline. Parallelized with MPI across nodes, OpenMP within nodes and CUDA for distance computation, with latency, throughput, recall@k and strong and weak scaling measured.
Tap Run to watch it work, or tap a step to see what it does.
Ranks emergency requests by priority and allocates medical, food and rescue resources under strict latency goals. A hybrid 1D CNN and TabNet regressor produces the priority score, and a fault-tolerant manager redirects requests to the next nearest active center when nodes fail. Single-author paper.
Tap Run to watch it work, or tap a step to see what it does.
Wearable simulators stream vitals to a gateway, which feeds a medical center that classifies health status with K-star and ranks hospitals with AHP-VIKOR. Deployed with Docker Compose. IJIRCCE 2024.
Tap Run to watch it work, or tap a step to see what it does.
Scans thousands of postings across 62 job boards every night and emails only the new matches. One scraper per source type behind a uniform record contract, including a headless browser for JavaScript pages. Idempotent re-runs through a UNIQUE URL constraint, and per-source failure isolation so one broken board never halts a run.
Five small games built from problems I have solved. Beat your best, or switch to free play and just poke at them.
Time your transmissions
The signal quality swings like a real radio. Transmit when it is strong. Every frame gets six tries, and the whole message gets twelve transmissions.
GoalDeliver all 7 frames in 12 transmissions. Send when the signal is strong.
Score0
Bestnone yet
Signal
60%
Dashed line: good enough to transmit.
12 transmissions left
#1battery queued
#23.7V, grqueued
#3id 238V,queued
#4 invertequeued
#5r onlinequeued
#6, temp 4queued
#71Cqueued
Simulation. The signal is generated and frames are 8 bytes here so the demo stays readable.
What I work with
Systems Programming
Where most of my production hours went.
AI & Machine Learning
Training, serving and running models on-device.
HPC & Performance
Making it fast, then measuring it.
Backend & Cloud
Services, streams and the infrastructure under them.
Web & Frontend
Enough to ship the interface for what I build.
Data & Research
Analysis, signals and speech.
Hover or tap any skill to see where I used it.
Where I studied
Sep 2025 - May 2027
University of Wisconsin-Madison
M.S. Computer Science
School of Computer, Data & Information Sciences
Coursework
Operating Systems / High Performance Computing / Databases / Big Data Systems / Machine Learning / Computer Vision / AI Agents
Graduate Teaching Assistant and Peer Mentor, CS 640 Computer Networks (Spring 2026). Supported 3 sections and 200+ students with 6+ hours of office hours a week.
Jul 2018 - May 2023
IIT Kharagpur
B.Tech (Hons.) + M.Tech dual degree
Electronics & Electrical Communication Engineering
Coursework
Data Structures & Algorithms / Machine Learning / Digital Image Processing / Computer Networks / Embedded Systems Design / Digital Signal Processing
Dual-degree thesis on converting whispered speech into natural speech. 12.24% word error rate. Presented at Empower 2025.
Teaching Assistant for Image & Video Processing (Autumn 2022) and Embedded Systems Design (Spring 2023).
Ranks & recognition
23
IIT JEE Mains 2018
Nationally ranked 23 among 125,000 candidates in Paper-II. Top 0.018%.
1318
IIT JEE Advanced 2018
Nationally ranked among 230,000 candidates. Top 0.5%.
1250
GATE 2022
Nationally ranked in the Graduate Aptitude Test in Engineering. Top 1%.
2025
Empower 2025
Presented my dual-degree thesis on whispered speech to natural speech.
Ask the terminal
Type a command or tap one. It answers for whichever view you are on.