Selected work
What I've built recently, what it does, and the tools it runs on.For deeper conversations, please reach out.
Clinical signal extraction & feature engineering pipeline
[ internal ]KFP v2 pipelines compiled and submitted to Vertex AI Pipelines, triggered by Pub/Sub. Extracts clinical signals from encounter notes via Gemini batch prediction across 100k+ encounters per run, then engineers per-patient feature matrices with risk stratification — multi-tenant, multi-condition (diabetes, hypertension, CKD, obesity, dyslipidemia, CHF, ASCVD) in a single pass.
Data platform infrastructure-as-code
[ internal ]Terraform for the data platform across two GCP projects. GCS, BigQuery, KMS, Artifact Registry, Pub/Sub, IAM, monitoring, plus Workload Identity Federation for GitHub Actions CI/CD and Fivetran Private Service Connect. Prod/staging isolation chosen deliberately to keep state migration off the critical path of immutable resources like KMS keyrings and data-bearing buckets.
Internal Slack-fronted agentic knowledge base
[ internal ]Slack bot on Cloud Run dispatches to an Anthropic managed agent running in a sandboxed container. The agent works against a 300+ page LLM-owned wiki using custom tools (Slack search, BigQuery, git, URL fetch) plus built-in agent tools (bash, read/write, grep, web search). Ingests URLs, PDFs, meeting notes, and Slack threads into structured wiki pages that compound over time.
Cloud Composer (Airflow 3) platform
[ internal ]Terraform for Cloud Composer plus the production DAG repository. A layered local validation pipeline (py_compile → safe-mode discovery → tenants schema → full DagBag parse → factory unit tests with mocked GCP clients) runs before deploy so broken DAGs never reach Composer. Led the original migration off an overly complex Tuva canonical model.
Internal viz publishing platform
[ internal ]One hostname, split at the load balancer URL map. /ingest/* is public-but-rate-limited (Cloud Armor, shared-secret auth) and accepts JSON envelopes over HTTP or via an MCP server mounted at /mcp for agent clients. /* is org-only behind IAP and renders items in sandboxed per-item iframes — firehose feed, per-user feeds, shareable permalinks.
Reproducible notebook environments
[ internal ]Standardized uv-managed notebook environments for clinical signal extraction and feature-pipeline EDA. Reproducible across team members and across Colab / local Jupyter / VS Code — eliminates the "works on my notebook" failure mode that data engineering teams keep paying for.
Clinician Overrides as Implicit Preference Signals for Clinical AI in Value-Based Care
A framework that interprets clinician overrides of AI recommendations as data for training reward models — treating clinical disagreement as preference signal rather than as noise to discard.
A Reinforcement Learning Framework for Chronic Disease Management
Reinforcement learning applied to chronic disease management, addressing reward sparsity over long-horizon outcomes by incorporating learned preference signals from clinical interactions.
CritPost
An agentic platform that analyzes LinkedIn content for AI-generated tells, engagement bait, and signal-to-noise. SvelteKit frontend, Python FastAPI backend orchestrating up to 10 BAML-defined agents, Postgres on Cloud SQL, deployed on Cloud Run.
GIFSlop
A Claude agent writes Python that draws frames with PIL. A Cloud Run service stitches them into GIFs and publishes to a public manifest. A SvelteKit static site polls the manifest and renders the cards. Two trigger paths: local CLI, or open a GitHub issue and a daemon runs the same agent loop.
status-trend
A Go TUI built with Bubble Tea and Lip Gloss that aggregates outage and incident data from Claude, OpenAI, Google Cloud AI, Cohere, GitHub, and Vercel into one dashboard. Distributed via a Homebrew tap.
stratumflow
Python tooling that smooths internal data engineering workflows on Google Cloud. Open-sourced after enough colleagues asked for the helpers.
rag-in-a-box
A RAG implementation small enough to actually understand. Drop in a PDF or text, watch the embeddings visualize, query the vector store, see the inference call. Local embeddings via LM Studio, Claude for inference.
engabe.com
SvelteKit + Tailwind 4 + Svelte 5 runes. Terminal aesthetic with a side of Rick & Morty (see /c-137). Features OpenAI streaming synthesis, Playwright web scraping, three.js portals, an mdsvex dispatch system, and a side gallery of original music compositions.