MS Software Engineering @ San Jose State University
I build AI infrastructure and the systems underneath it. That means inference servers with continuous batching and paged KV caches, agents that know when their retrieved context is weak and go looking again, GPU cluster schedulers that isolate every job at the cgroup level — and, when the problem calls for it, a B-tree written down to the 4 KiB page or a CUDA kernel timed against a golden reference.
The through-line in my work is measurement over assertion: four serving backends behind one interface so the benchmark is honest, five checkpoint strategies compared across five model families, three attention kernels profiled in Nsight. I work across Python, C++, Rust, Go, and Java, and I ship full-stack products too — but the layer I care about is the one that decides whether the thing above it is fast, correct, and still standing at 3 a.m.
Languages
JVM Frameworks
Python Frameworks & Ecosystem
Web & Mobile
Agents, RAG & LLM Applications
AI Infrastructure & Serving
ML & Training
Systems & Low-Level
Cloud, Data & Platform
Six projects that cover the range I work across — inference infrastructure, agentic AI, and systems built from the page up.
llm_serve — Multi-Backend LLM Inference Serving
A fine-tuned Mistral 7B (QLoRA) behind vLLM, NVIDIA Triton, Ray Serve, and TensorRT-LLM — one OpenAI-compatible API, four engines, one apples-to-apples benchmark.
- Continuous batching — the batch is rebuilt every decode step, so a finished sequence frees its slot immediately instead of waiting for the whole batch
- Paged KV cache with prefix reuse — fixed-size, reference-counted KV blocks shared across requests, so a repeated system prompt is prefilled once and reused
- Every backend sits behind one
Backendprotocol, so the API layer, load generator, and metrics are identical across runs and only the engine varies — tokens/s, req/s, TTFT, inter-token latency, GPU utilization, and $/1M tokens are actually comparable - OpenAI-exact SSE chunk framing (existing clients work unchanged); fp8 / int4-AWQ TensorRT-LLM engine export; the scheduler and block manager are pure Python and CPU-testable
sage — Agentic RAG with MCP Tools
LangGraph agent over a documentation corpus that routes, retrieves, self-reflects, and re-queries when its context looks weak — then answers with inline citations.
- Agent graph:
router → retrieve → reflect → (rewrite → retrieve …) → generate, routing each question assimple_lookup,multi_hop, ormetadata_scoped - MCP tools —
search_docs,filter_by_metadata,get_pageexposed as LangChain tools the agent calls directly - Ingestion pipeline: BFS crawler → boilerplate/language/near-duplicate filters → recursive
chunking with per-source
chunk_indexfor citation lookup → Pinecone with filterable metadata - MMR retrieval with a scored variant driving the confidence check; LangFuse traces and scores every run on retrieval recall, faithfulness, and answer relevance
diag-triage — LLM Fleet Observability over MCP
Ingests kernel/driver diagnostics — NVIDIA Xid, EDAC/ECC, MCE, NVMe, NIC — from scale-out clusters and triages each incident with a Claude agent over MCP.
- Deterministic detection first, LLM last — cheap parsing and rule/rate detection runs on every line; the expensive agent runs once per incident, after a fleet-wide fault has been collapsed to a single cluster
- Normalized failure signatures: volatile tokens (hex addresses, counters, PCI IDs, UUIDs) are masked, so the same Xid across hundreds of hosts groups into one incident
- Elasticsearch index templates + ILM, idempotent bulk indexing, incident upsert-by-fingerprint, more-like-this similar-incident lookup; severity-gated deduplicated routing to Slack/PagerDuty
cluster-runner — Hybrid-Cloud GPU CI Dispatcher
Massively parallel CI runner for HPC and ML workloads, dispatching onto an on-prem + AWS A100/H100 Kubernetes cluster provisioned with Terraform.
- Rust dispatcher (tonic gRPC): priority-aware scheduler, Pod factory, Kubernetes watch loop, Prometheus exporter — paired with a Python/FastAPI orchestrator for DAG validation and matrix expansion
- Per-job isolation inside the pod: the Rust
ci-workerunshares Linux namespaces, applies cgroup v2 caps, drops capabilities, then execs the user command - Terraform provisions the AWS half — EKS control plane, spot CPU node group, on-demand A100 GPU node group, and the NVIDIA GPU operator; on-prem joined via a second provider alias
clatterdb — Distributed Time-Series Database Engine
A time-series database written from scratch in Go — storage engine, transaction layer, query engine, and cluster layer, no external database underneath.
- LSM-tree storage with a write-ahead log for durable, high-throughput ingest
- MVCC snapshot isolation so long-running reads never block writers
- Custom query engine — parser → planner → executor rather than an embedded SQL library
- Time-based sharding across the cluster layer for horizontal scale-out
btree_kv — Disk-Backed B-Tree Key-Value Store
C++17 storage engine down to the 4 KiB page: buffer pool, eviction policy, and page latches written by hand.
- Page-aligned buffer pool with LRU eviction over a fixed frame count, backed by a disk
manager doing
pread/pwriteof 4096-byte pages (page 0 is the header holding the root ID) - Per-page POSIX
pthread_rwlockfor concurrent readers, with single-writer serialization at the tree level viastd::shared_mutex - O(log n) point lookups and ordered range scans over fixed-width keys
| Project | What it is |
|---|---|
| kernel-bench | CUDA attention micro-benchmark — hand-written naive/fused/flash kernels timed with CUDA events and profiled in Nsight Compute, diffed against an fp32 golden reference, plus a bare-metal ARM Cortex-M4 Q15 path over UART for hardware co-design analysis |
| cloudplay | GPU-backed game-session orchestration — Spring Boot microservices, WebRTC streaming, heartbeat-lease registry, demand-driven GPU pool autoscaling on K8s + Terraform |
| percept_stream | DETR fine-tuning → ONNX INT8 quantization → C++ OpenCV inference at 30+ FPS |
| point_pilot | PointPillars 3D detection on KITTI with a C++ ONNX Runtime inference pipeline |
| Project | What it is |
|---|---|
| experiment_vault | MLflow experiment tracking + automated retraining with PSI/KS drift detection and FastAPI model serving |
| checkpoint_experiment | Five isolated training runs (XGBoost, DistilBERT, seq2seq, ResNet-50, two-tower) comparing first / best / timed / final checkpoint behavior across model families |
| reward_lab | Full RLHF pipeline — preference collection, Bradley-Terry reward model, PPO fine-tuning with KL penalties, KL-coefficient ablations |
| vision_tune | LoRA fine-tuning of CLIP ViT-B/32 and ViT-B/16 — 32-run ablation grid over rank × target modules × LR, <1% trainable params |
| adrank | MMoE multi-task ranking (CTR + CVR) with realtime online training, 40+ features, AUC-ROC / NDCG@K |
| flickpick | Two-tower retrieval + LightGBM ranking with FAISS, Redis feature store, mSPRT A/B testing, canary rollouts |
| Project | What it is |
|---|---|
| babel | Multilingual RAG on Cohere Command/Embed/Rerank — hybrid dense+BM25, cross-encoder reranking, grounded citations, agentic self-correction |
| ai_graceful_degradation | Microservices demo that fails on purpose while an AI agent keeps it alive — AI-driven circuit breakers, Kafka outbox fallback, dynamic K8s scaling |
| trace-sleuth | OpenTelemetry AI-assisted debugging with distributed tracing across microservices |
| cf_ai_flashtutor | PDF → flashcards on Cloudflare Workers AI (Llama 3.1, Whisper, XTTS) with multi-strategy JSON fallback |
| Project | What it is |
|---|---|
| chophouse | Master-executor distributed video transcoding in Go — gRPC, etcd lease failure detection, scatter-gather queries, work stealing |
| raft-kv | Distributed key-value store implementing the Raft consensus algorithm |
| hermes | Low-latency caching service — three-tier LRU → Redis → Cassandra read/write-through with request coalescing |
| localshare | Linux HTTP/1.1 file server in C++17 using epoll + thread pool + sendfile |
| mem-db | In-memory database engine in Go with a B+ tree index and concurrent read/write support |
| procsnap | Linux process resource monitor in C++17 — per-process CPU/mem/fd via /proc, ANSI top-N, threshold alerts |
Full-stack and applied projects — click to expand
Orbit — Offline-First Productivity Platform
Cross-platform React Native + FastAPI app with MCP integration (connect any LLM to manage tasks, habits, lists, and notes in plain English), a custom three-component sync engine (Outbox → Delta Pull → Conflict Resolution), and smart local notifications.
Nidana — AI Genetic Disorder Detection
Early detection of genetic disorders from facial features via a 12-layer neural network, with live camera detection and automated diagnostic reporting. 📄 Published in IJFGCN
SVIRO Seat Detection — Multi-Model Detection Benchmark
Benchmarked YOLOv8, YOLOx, Faster R-CNN, RetinaNet, and EfficientDet on the SVIRO dataset with GPU training on Colab. Faster R-CNN best accuracy (55.70% mAP@50); RetinaNet best size-accuracy trade-off.
Go Screen Sharing — Zero-Persistence WebRTC
P2P screen sharing at 1080p/30fps with ephemeral rooms and no server-side storage; Go backend with Gorilla WebSocket signaling.
ad_vision — Programmatic Advertising Platform
Real-time bidding with TensorFlow brand-safety analysis, CTR-weighted second-price auctions, Kafka event streaming, and a Django REST API.
Next.js + Prisma tracker with Gmail linking, automatic token refresh, and email parsing.
- 🧊 Arctic Code Vault Contributor — Code preserved in the GitHub Arctic Code Vault
- 📄 Published Researcher — Research on AI-based genetic disorder detection published in IJFGCN
🎯 Focusing on AI infrastructure, agentic systems, and the layers underneath
