Building pragmatic AI and data platforms
I build data teams and ship platforms that solve real problems: agentic systems, RAG pipelines, and production-ready ML. I focus on simple, reliable architectures that scale, with clear boundaries and strong observability.
What I focus on
- Agentic systems: planning, tool-use, evaluation, and guardrails
- Retrieval-Augmented Generation: ingestion, chunking, embeddings, grounding, and attribution
- Data platforms: secure multi-tenant foundations, CI/CD, IaC, and monitoring
- ML foundations: Rust/Python hybrid performance, lineage, MLflow + PostgreSQL observability
Project snapshots
Alter SaaS — LLM Support Agent (Enterprise)
Multi-tenant support agent that blends Slack/Teams context, code, and docs with strict privacy. Thread-aware, source-attributed answers, configurable knowledge, and SOC2-ready posture.
Stack: LangChain/LangGraph, BAML, FastAPI, Next.js 14, LangSmith, DeepEval, LlamaIndex, Context7. Infra: PostgreSQL, Qdrant/Weaviate, Redis, MinIO/S3, Kubernetes, Terraform.
LaunchData — Data Stack Builder (IDP)
Internal Developer Platform to deploy client-specific modern data stacks in their cloud. Services include API Gateway, Config, Deployment, and Client management with secure defaults.
Stack: Docker Compose, PostgreSQL, Redis, JWT, Prometheus/Grafana, centralized logging, health checks, Trivy in CI/CD.
System 3 — Foundational ML Framework
Autonomous ML platform that pairs LLM agents with robust data stacks. It performs automatic feature discovery, self-optimizing hyperparameter/architecture search, continuous drift detection, and performance tuning. System 3 integrates cleanly with LaunchData (provisioning/infra) and Alter (knowledge/agents) to move from data to decisions with minimal human glue.
Stack: Rust/Python via PyO3, MLflow, PostgreSQL, OpenTelemetry, Docker, GPU-aware orchestration.
Core analytics and data engineering
(Separate from platform projects)
- Warehouses: Snowflake, PostgreSQL
- Modeling: dbt (projects, tests, exposures, docs)
- Ingestion: Airbyte (open-source ops + connectors)
- Languages: Python, Rust, TypeScript
- ML: MLflow (tracking/registry), feature lineage, evaluation with DeepEval
- Observability: OpenTelemetry, Prometheus + Grafana, centralized structured logging
- Vector/Storage: Qdrant/Weaviate, S3/MinIO
- Services: FastAPI, JWT auth, Redis for caching
- BI/Analytics: Metabase, Looker, Tableau, Power BI, Mode, Mixpanel
- Data quality: Metaplane (ML-based data quality)
- Platform ops: Docker, Kubernetes, Terraform, CI/CD (GitHub Actions, Trivy security scans)
- Open-source data platforms: setup and infra for Airbyte, Metabase, dbt (configs, upgrades, monitoring)
How I build data teams
- Start with strong foundations: environments, CI/CD, observability, and clear data contracts
- Ship value early with thin vertical slices; expand safely via templates and guardrails
- Make work inspectable: docs by default, ADRs, and automated runbooks
- Keep it boring where it matters; use advanced techniques only when they de-risk
Selected writing
Product Hunt contributions
Want to talk platforms, agentic systems, or RAG?