Founder, Microclaw LLC · AI Engineering · Data Science · ML Engineering
AI Engineer · ML Engineer · Data Scientist
I build AI agents, and the multi-agent systems that coordinate them. Microclaw is a production AI agent for Microsoft 365, live on the Microsoft Commercial Marketplace: one agent working across twelve services through 85 function-calling tools. The multi-agent workflow engine is its complement, modular AI specialists composed into dynamic, validated workflows, built from scratch with measured results. One is a dedicated agent I shipped; the other is the orchestration layer for many. Before this, three years of physical-design engineering at Intel and eight years teaching undergraduate mathematics. BS Mechanical Engineering · MS Mathematics.
Background
BS Mechanical Engineering at UC Berkeley, then three years at Intel in microprocessor physical design, building automated validation systems that processed millions of design verification points and flagged yield issues before tape-out.
MS Mathematics at City College of New York, then eight years teaching undergraduate mathematics at Santa Rosa Junior College: algebra through calculus III, linear algebra, differential equations, statistics. Curriculum, assessments, and tracking which teaching approaches actually moved student outcomes.
Most recently, eighteen months self-directed through the data and ML stack, moving fast across forecasting, Bayesian experimentation, streaming, cloud pipelines, and ML serving. A body of shipped projects, breadth on purpose. Then I went deep on two agent systems, the work I want to be judged on.
Microclaw is a production AI agent for Microsoft 365, live on the Microsoft Commercial Marketplace, one agent I designed, built, and shipped solo. The multi-agent workflow engine is its complement: modular specialists composed into dynamic, validated workflows, built from scratch with measured results. One dedicated agent, one orchestration layer for many. Both are below.
Intel · Physical Design
3
Years engineering
Microprocessor physical design · Python and Perl automation · statistical validation at manufacturing scale.
Santa Rosa JC · Mathematics
8
Years teaching
Algebra through calculus III · linear algebra · differential equations · statistics. MS Mathematics.
Microclaw LLC · 2026 – present
NOW
Founder & Engineer
Solo build, end-to-end. Product, engineering, legal entity, brand, Microsoft Marketplace onboarding, go-to-market.
Featured · Solo build · Live on Microsoft AppSource
A retrieval-augmented agent that lives inside Microsoft Teams. Operates across Microsoft 365 (email, calendar, tasks, files, notes, channels) through a single conversation. The headline isn't the commerce; it's the agent. KNN tool retrieval over 1,020 training examples, RAG-pattern semantic memory with cosine similarity, smart model routing, in-house eval framework. Each piece below.
Tool selection
k=7, 0.80 confidence threshold, cosine-similarity fallback against tool descriptions (using text-embedding-3-small). Validated against an embedding-only baseline: 95.0% recall vs 92.7%, 6.4 tools selected per request vs 18, ~33% input-token reduction.
Semantic memory
Cosine similarity over user-scoped memory entries. selectMemoriesForMessage(message, entries, topN) returns top-N relevant memories per turn. Conversation-history compression preserves entity references through structured tool-call summaries.
Smart model router
Defaults to mini for short factual lookups; escalates to 4o on complexity keywords or mid-conversation tool-call escalation. 17× cheaper for simple queries than always-on 4o. Cost and latency are explicit design variables.
Eval framework
In-house eval suite under src/eval/: expected-facts grading, accuracy and quality dimensions, A/B comparison against a baseline bot. Each rev measured before ship; iterated round over round to close the quality gap before submission.
Natural-language automations
Users describe rules in English; the agent parses intent into structured rules in Postgres. Rules fire in real time via Microsoft Graph change-notification webhooks. Pause, edit, or delete from a settings page.
Multi-tenant SaaS
Microsoft Entra delegated authentication, every row tagged with tenantId. Two-layer permission system (Microsoft org-level plus per-user app-level toggles). Standard plus Self-Hosted offerings on the Marketplace; Fulfillment API v2 and Metering Service drive bracket pricing.
Stack
Featured · Built from scratch · Interactive writeup
Small AI agents that each do one job, with fixed input and output contracts, composed into validated control-flow graphs and run on a concurrency-safe board with human approval gates and a learning loop that sharpens each agent from a handful of examples. The architecture the field is converging on, built from scratch, with measured, re-runnable results. Not a product, and not novel. A coherent working synthesis I can take apart and defend end to end.
Modular specialists
Each specialist declares its exact inputs and outputs, so any part snaps into any recipe without glue code. The same shared parts (classify, rank, verify, act) get reused across very different workflows.
Composer
Given only a description, the composer wires the graph. Scored against real, human-labeled evals it matched specialists I had hand-built, and when it cannot cover a step it flags the gap and refuses to call the workflow runnable. It does not fake capability.
Static validator
A small type-checker for the workflow: entry and exit, reachability, loop-termination guards, dangling outputs, contract compatibility. Invalid graphs are caught before a run, not discovered halfway through one.
The board
Work streams through the graph concurrently, each item advancing on its own, specialists cloning per item under load. Deliberately dumb, single-writer, concurrency-safe by construction.
Human gates
Every recipe pauses at a gate before it acts. A verify step can loop a draft back to rewrite until it clears the bar, then the work waits for human approval before anything goes out.
Learning loop · measured
A deliberately weak specialist scored 50% on a held-out eval, got six curated corrections, and climbed to 100%, then was promoted to trusted. Retrieval-injected few-shot, no fine-tuning. Reproducible: python examples/learning_loop_demo.py.
Stack
Portfolio
Microclaw and the workflow engine above are the flagships, the two I can take apart end to end. Beneath them, a body of self-directed projects across forecasting, Bayesian experimentation, streaming, cloud pipelines, and ML engineering. Each one shipped, each a step through the stack.
Collects GitHub repository star history via the API and forecasts growth using Facebook Prophet with configurable changepoint sensitivity and named presets.
Star growth is bursty. A viral tweet creates a step function Prophet's default changepoints can miss. Tuning changepoint_prior_scale per repo type produces materially better forecasts.
Thompson Sampling, UCB1, and Epsilon-Greedy algorithms implemented from scratch. Each maintains its own selection and update logic, no library bandits. Streamlit simulator below tunes arm reward distributions and watches the algorithms converge.
Traditional A/B testing freezes traffic during the learning period. Multi-armed bandits explore and exploit simultaneously. Thompson's Beta-distribution updates make uncertainty reduction visible round by round.
Two-path query routing: a rule-based fast path handles correlations, group-bys, and aggregations deterministically. Queries below a confidence threshold escalate to the Anthropic API with DataFrame context injection and multi-turn conversation history.
The fast path answers most common data questions with zero API cost and sub-second latency. The LLM path gets a ContextBuilder-assembled summary of the DataFrame so it can reason about data it never directly touches.
Statistical audit of demographic bias in LLM responses across two prompt datasets. Generates prompts across gender, age, and race dimensions, scores for agentic, communal, competence, and warmth lexicon patterns using ANOVA and Cohen's d. Cross-model comparison surfaces which biases are model-specific vs systemic.
The trap in bias research is confusing statistical significance with practical significance. With enough samples, any difference is "significant." Cohen's d separates the signal from the noise.
Streaming ensemble: Isolation Forest, LSTM autoencoder, Z-score, and a LightGBM gradient-boosted classifier voting together. Dockerized FastAPI REST API with health checks plus a streaming pipeline for continuous monitoring.
Each detector covers a different failure mode. The new LightGBM detector adds a supervised signal trained on engineered rolling-window features. Mixing supervised and unsupervised in one ensemble keeps recall high without inflating false positives.
Parses SEC EDGAR filings to extract financial metrics (revenue, net income, EPS) and sentiment. Regex-based extraction with lexicon scoring on MD&A sections across multiple companies.
EDGAR filings are semi-structured text. The parsing challenge is extracting consistent metrics across companies that use different table formats and labeling conventions.
Three-layer data pipeline (staging, clean, marts) with dbt-style SQL transformations, window functions, and CTEs. SQLAlchemy ORM with swappable SQLite/PostgreSQL backend.
The three-layer pattern enforces a discipline. When a mart query returns wrong results, you can trace the data backwards through each layer to find where it broke.
Production ML serving: FastAPI REST endpoint, Redis caching with TTL, Pydantic v2 validation, vectorized batch inference, async job queue, Docker deployment with health checks.
Redis intercepts repeated predictions, Pydantic v2 rejects bad inputs, async endpoints use asyncio.to_thread() to keep the event loop free during CPU-bound inference, and Docker Compose wires it into a single deployable unit.
AWS-native ETL: S3 data lake with Parquet/Snappy storage, Lambda validation, DynamoDB run logging, tenacity retry logic, Hive-style partitioning. In-pipeline data quality layer quarantines invalid rows and flags runs that exceed budget.
Hive-style partitioning means queries scan only the date range they need. The DQ layer runs schema, range, and null-rate checks before load, writes a quarantine sidecar, and the Lambda fails the run loud if invalid-record rate exceeds threshold.
C++ rolling statistics (mean, std, z-score) via Welford's single-pass algorithm, exposed to Python through pybind11 with zero-copy NumPy buffer protocol. Benchmarked against NumPy and pandas rolling on n=1M.
Welford's algorithm computes variance in a single pass without storing all values, which is critical for streaming. The pybind11 binding eliminates Python overhead per call and avoids copying NumPy arrays into a C++ container.
Medallion lakehouse (bronze, silver, gold) on 10M NYC taxi rows with Delta Lake and row-level data quality gates between layers. Runs locally via the deltalake Python library; deployable to Databricks Community Edition.
The medallion pattern enforces data quality incrementally: bronze appends raw ingest with provenance, silver types/dedupes/validates and quarantines invalid rows, gold aggregates for specific analytical questions. Quality checks between layers are first-class.
Production-shape RAG on Google Cloud. SEC EDGAR filings as the corpus, Vertex AI Gemini for generation, BigQuery's native VECTOR_SEARCH() for retrieval. FAISS and pgvector as comparison backends. LangChain and LlamaIndex pipelines side-by-side over the same retriever interface.
Three retrievers and two pipelines, six combinations benchmarked on the same 30-question ground-truth eval set against Apple's 10-K. Smart Flash/Pro routing on the Gemini layer keeps cost low on simple queries (12.5x cost ratio).
A real-time crypto pipeline on Redpanda and Spark Structured Streaming. One job aggregates ticks into 5-minute tumbling-window OHLCV bars with a 30-second watermark, a second runs a per-symbol rolling z-score anomaly detector, and both write to Delta Lake. A Streamlit dashboard reads the Delta tables live.
Stream-batch unified aggregation, checkpointed exactly-once recovery proven by a kill-and-restart test, and host-side Delta reads with a synthetic fallback so the dashboard runs on a bare checkout. Runs locally via docker-compose, no cloud, no paid services.
Stack
Click any chip to filter the project grid above by that tool. Categories below reflect what actually appears in the eleven cards, not a marketing list.
Languages · Native
ML · Detectors
Statistics · Bayesian
LLMs · NLP
Data Engineering
Cloud · Infra
Front-end · Demos
Misc
Interactive
Project 02 · Multi-armed bandit
Run a bandit simulation and watch the algorithm allocate pulls. Thompson Sampling uses Bayesian Beta distributions. Uncertainty about each arm's true win rate drives exploration.
Total reward
0
Regret
0
Best arm
·
Project 05 · Anomaly detection
Streaming time series with simulated anomalies. The detector uses a rolling statistical model. Points more than 3σ from the local mean are flagged. Watch it adapt as the signal changes.
Points
0
Flagged
0
Rate
0%
Stream starting…
Complete · All five repos shipped · Mar 2026
Five interconnected repositories building an end-to-end paper trading system, fully shipped. Real Kraken market data flows through chart generation, dual-path signal analysis (technical indicators plus FinBERT sentiment), backtesting, and a human-oversight dashboard, with losing trades feeding back to optimize signal parameters.
The feedback loop: T4 records whether each signal configuration led to a winning or losing paper trade. T3's parameters (indicator thresholds, sentiment weights, fusion ratio) tune from those outcomes. T5's dashboard reviews signal performance and approves parameter changes. The system improves its own signal generation while a human stays in the loop as decision-maker. Entirely free to run: no paid APIs, local FinBERT, public market data.
Roadmap
walk-forward-validation-framework deflated Sharpe + walk-forward validation over time-series strategies
recommendation-system collaborative + content-based hybrid, NDCG / MAP evaluation
mlops-pipeline MLflow + DVC + model registry with retraining
graph-analytics NetworkX / Neo4j, community detection, PageRank, centrality
anomaly-detection CNN-autoencoder detector, new image modality
Technical skills
Languages
ML · Statistics
Data Engineering
Cloud · Infrastructure
LLM · NLP
Visualization · Tools
Contact
Founder & Engineer at Microclaw LLC. Interested in conversations about AI Engineering, ML Engineering, and Data Science roles. Portland, OR. Open to remote.