Accelerated CS @ Boston University, graduating a year early. I build production systems as the sole engineer — a degree planner used by ~900 students, and a nonprofit's entire 250+ endpoint platform. Alongside that, I contribute to the LLM inference stack (vLLM, llm-d, KServe, InstructLab): my niche there is finding the paths a new feature quietly fails on.
CTO & Sole Engineer Honor Society of Cinematic Arts Multi-tenant platform · 250+ endpoint API · live across 15+ chapters & 150+ members |
SWE Intern BU Spark! Harvard Herbaria OCR confidence layer (FastAPI) + micro-credentialing platform |
SWE Intern Doro (Local Treasure) TikTok OAuth, Stripe checkout & moderation tooling (Django/DRF) |
Research Assistant BU CISS Financial markets × geopolitical uncertainty · Python data workflows |
Previously — AI & Software Engineer Intern @ HireBuddy · Lead Software Engineer @ Hack4Impact BU
I contribute to vLLM, llm-d (a CNCF sandbox distributed LLM inference stack founded by Red Hat, Google Cloud, IBM Research, CoreWeave and NVIDIA), KServe, and Red Hat's InstructLab.
32 pull requests opened across vLLM, llm-d, KServe & InstructLab |
13 merged — including 12 into llm-d-benchmark, reviewed and approved by two separate core maintainers |
9 defects found and filed against a newly released no-Kubernetes deployment path, 6 reproduced live with tracebacks |
2 code reviews given on other contributors' pull requests |
What I am actually useful for: running a brand-new feature on a machine its maintainers do not have, a clean macOS laptop with no cluster and no GPU, and finding the paths where it reports success while doing nothing. That produced nine issues against one feature, including a container name collision that let one deployment's teardown destroy a sibling deployment's running containers.
Reviewing counts too. On someone else's pull request I found that a proposed dependency pin would fail the project's own version comparison, so every install would re-run the installer and silently overwrite the user's kubectl binary. Proven by running the project's own function against the proposed value.
Also opened fixes merged into the Kubernetes SIG's gateway-api-inference-extension (3 merged, 1 draft) and open PRs against SGLang.
%%{init: {'theme':'base','themeVariables':{'primaryColor':'#171F33','primaryTextColor':'#E6EDF3','primaryBorderColor':'#14B8A6','lineColor':'#10B981','fontSize':'14px'}}}%%
flowchart LR
UI["Frontend\nReact · Next.js · Three.js"] --> API["APIs\nFastAPI · Flask · Express · DRF"]
API --> AI["AI Layer\nLangGraph · MCP · embeddings · TF-IDF retrieval"]
API --> DATA[("Data\nPostgres · Redis · Elasticsearch")]
AI --> DATA
API --> INFRA["Infra\nDocker · AWS · Vercel · Railway"]
DATA --> INFRA






