Building AI for the ones who can't build it for themselves — and shipping the software around it.
AI/ML & full-stack engineer. GSoC 2026 @ NumFOCUS / scikit-bio, where I make scientific-Python hot paths fast (Numba · Array API · GPU). Around that I build LLM tools and evaluations — much of it aimed at animal advocacy with Open Paws — and I merge code into projects people actually run.
I like reproducible benchmarks, honest negative results, and code that ships.
Porting performance-critical Cython to Numba, with Array-API / GPU-resident paths for PERMANOVA, Mantel, and distance matrices — one source, CPU → GPU.
10 merged PRs · 2.4× vs Cython (n=3000) · <1e-15 numerical agreement
- inspect-speciesism-eval — an LLM value-alignment evaluation on UK AISI's Inspect framework; it surfaces when a model recognizes a harm yet still rates it acceptable. Truncation-aware scorer built for reasoning models · 13 tests. (Ongoing research into the framing-robustness of moral judgment; cross-family replication in progress.)
- Applied LLMs — a production RAG system (Pinecone + OpenAI), LLM civic tooling, and RLHF data pipelines.
Fixes and features merged into projects at real scale:
daytona ⭐72k · docling ⭐64k · helm ⭐30k · kubernetes · OpenHands
Full merged-PR list (16, all authored & merged)
| Repo | PR | What |
|---|---|---|
| daytonaio/daytona ⭐72k | #4107 | Stop sync session commands hanging on stdin |
| docling-project/docling ⭐64k | #3134 | Fix image-backend resource leaks (unclosed PIL handles) |
| helm/helm ⭐30k | #31907 | Hermetic User-Agent REST-config test |
| All-Hands-AI/OpenHands | #13471 | Treat llm_base_url="" as an explicit clear |
| kubernetes/kubernetes | #137283 | Clarify envFrom env-var key constraints |
| scverse/scanpy | #3986 | Remove duplicated Louvain/Leiden docs |
| nextflow-io/nextflow | #6869 | Clarify Path.name for staged inputs |
| mlco2/codecarbon | #1080 | Quiet tracebacks on auth/config failure |
| pyinat/pyinaturalist | #682 · #684 · #686 · #679 | Type-safe constants, annotation labels, docs |
| openfoodfacts/openfoodfacts-dart | #1203 | pub.dev package-score CI workflow |
| simonoppowa/OpenNutriTracker | #304 (+#303/#305/#311) | Custom meals in search + onboarding fixes |
| sustainable-computing-io/kepler | #2431 | Deploy without Prometheus Operator |
| gbif/pygbif | #200 | Clarify auth env-vars for downloads |
| openfoodfacts/smooth-app | #7427 | Align Flutter version refs |
| prometheus/docs | #2855 | Update Pushgateway references |
| JuliaNeighbors/Neighborhood.jl | #19 | Docs wording fix |
Open: biopython/biopython#5170.
- Adventurers Guild — gamified developer-project marketplace · Next.js · Prisma/Neon · Stripe · CI + tests
- knight-medicare — mental-health video-consultation platform · Next.js · Supabase · LiveKit · CTO & co-founder
- Open Permit — LLM civic tool: monitors development permits, drafts cited objections · Gemini · Supabase
- AFA Resource Chatbot — production RAG over the Asia-for-Animals resource database · Pinecone · OpenAI
- Material Innovation — B2B sustainable-materials platform · Next.js · Supabase · Stripe
Python TypeScript Go Julia — Numba · NumPy · Array API · Inspect · transformers/trl · RAG
Next.js · React · FastAPI — PostgreSQL/Supabase · Docker · Vercel · GitHub Actions
📫 llawlietbagsum@gmail.com · 🌐 abikhn.vercel.app · 📊 Kaggle




