Staff Software Engineer · Mobile + AI · Greater St. Louis
Agentic assistants, the MCP servers they call, and the telemetry that tracks what they cost and do. Ten years of mobile, backend, and platform underneath.
Kairo's agent runs this loop: tool calls into the Catechism, Canon Law, and the GIRM, and a citation on every claim.
Agents, the MCP servers they call, and the tooling that watches them.
Otto · Kenect
Agentic Spring AI assistant with function calling for Kenect's app. Not in production yet.
The agentic AI assistant we're building for Kenect's mobile app, started as a 2026 hackathon entry. A Spring AI service that makes function calls into the SMS, review, and analytics services, streams replies to React Native over the Vercel AI SDK, and keeps conversation memory in Postgres. Not in production yet.
Kairo
RAG over Church documents, with a citation on every claim.
RAG over the Catechism, Canon Law, and the GIRM, with a citation on every claim — the answer is built from retrieved sources, not from the model's memory.
AI assistants in my apps
Chef Tom, Ask Honey Bun, Ask Pip, and photo-to-macros meal logging on one agent helper.
Chef Tom in Daily Bread, Ask Honey Bun, Ask Pip in Reply Required, and Not Bread Alone's photo-to-macros meal logging and workout coach. The chat assistants share one agent helper in my messaging kit, so each app writes only its own brain.
This site's chat
A Claude agent with tool use that qualifies a visitor and emails me the lead.
A Claude agent with tool use on a Firebase Function: it answers questions, qualifies the visitor, and calls a submit_lead tool that emails me.
atlas · Kenect
Kenect's code-intelligence MCP server, 30+ tools. Built with Lonnie Coffman.
The code-intelligence MCP server behind Kenect's coding agents: 30+ tools for code search, symbol intelligence, and a cross-service architecture graph. Built with Lonnie Coffman; I brought the Confluence-ingest tools online and indexed the org's ADRs into the graph.
Kenect Toolbox · Kenect
An MCP server with 10 integrations. Built with Lonnie Coffman and Kevin Bost.
The desktop app that wires 10 integrations into every engineer's AI tools over MCP. Built with Lonnie Coffman and Kevin Bost; I added the read-only Kenect API tools to its MCP server.
whistleblower-mcp
A remote MCP server with OAuth 2.1 and citation-checked answers.
A remote MCP server for IRS whistleblower law — OAuth 2.1, six research and calculator tools, and a Claude plugin that blocks any answer whose citations don't check out against the source text.
Fleet telemetry · Kenect
Claude Code telemetry stack, OpenTelemetry into Grafana. Not rolled out yet.
A Claude Code telemetry stack I built for Kenect — OpenTelemetry into Prometheus, Loki, and Grafana, with dashboards for cost, model mix, tool mix, and skill and MCP usage by team. Demoed on a synthetic fleet; not rolled out yet.
Motive · Kenect
Parallel Claude Code agents in git worktrees. Built with Lonnie Coffman.
A multi-agent orchestrator that runs parallel Claude Code agents in isolated git worktrees. Built with Lonnie Coffman, whose design it is; I contributed to its worktree cleanup and added the agent that addresses PR review comments.
AI productivity scorecard
My Claude Code usage against merged-PR velocity, in Grafana.
My own Grafana scorecard that lines up my Claude Code usage against merged-PR velocity, hour by hour.
Skills for the release work
Eight Claude Code skills that ship the suite's iOS, Android, and web builds.
Eight Claude Code skills, kept in their own repo, that ship iOS, Android, and web builds, tag shared kits, and report App Store status across the suite.
Guardrails as hooks
Hooks and a simulator-lease tool that keep parallel agent sessions apart.
Hooks block a cloud command run against the wrong account, and devlease — a small tool I wrote — leases iOS simulators so parallel agent sessions and my own Xcode never overwrite each other's builds.
Cost in view
Daily Anthropic and OpenAI spend in the suite's admin console.
Anthropic and OpenAI spend is collected daily into the suite's admin console.
Real products, designed and shipped end-to-end.
A Catholic AI you can actually trust.
Ask anything about faith, prayer, morality, or Church teaching and get a clear answer with a citation for every claim — grounded in the Catechism, Canon Law, and the GIRM, so it never makes doctrine up.
What's inside
Built with Astro · Hono · Cloud Run · Claude · RAG
Baby tracking that's with you everywhere.
For the blur of early parenthood: log feedings, sleep, diapers, and milestones in seconds — synced instantly across every device a tired parent reaches for, from the nightstand to the nursery.
Available on
Built with SwiftUI · Kotlin · Firebase · Hono · Cloud Run · Claude
Your cookbook, among friends.
Paste a TikTok, a YouTube video, or a recipe site — or snap a photo of a handwritten card — and it becomes a clean recipe with ingredients and steps. Then share it with friends, browse their cookbooks, and talk about dinner in the same app.
What's inside
Built with SwiftUI · React · Firebase · Hono · Cloud Run · Claude
A food and fitness log built around protein.
Snap a photo or just say what you ate, and it names each food and estimates the macros — protein first. Tell the coach what you want to train and get a session built from your own history: the exercises, the sets, and a weight that nudges you forward.
What's inside
Built with SwiftUI · Firebase · Hono · Cloud Run · Claude
Runs your weekly pickleball group.
Who's playing, which court you're on, every score, and the standings. Players say whether they can make the weeks ahead, courts are dealt automatically when the roster locks, and a ladder or round-robin reshuffles after every session.
What's inside
Built with SwiftUI · React · Firebase · Cloud Functions
Family messages that get answered.
Mark a message Reply Required, and your teen's chosen apps pause until they reply. Chores work the same way. A pause never lasts more than an hour, and there's always a way out on the teen's screen. Pip walks parents through setup and answers their questions with AI.
What's inside
Built with SwiftUI · FamilyControls · Firebase · Cloud Functions · Claude
Shipping software since 2014.
I've been shipping software professionally since 2014 — starting with a PHP web app in college, then native iOS in Swift and Objective-C, and growing into a full-stack engineer who works across mobile, backend, and platform. Today I lead mobile at Kenect and work across the stack: a React Native flagship app, authentication libraries, code-generation tooling, and the agentic AI and Spring Boot services behind real-time messaging.
On my own time I design and ship complete products — Kairo, a citation-grounded Catholic AI; Honey Bun, a baby-tracking app for new parents; Daily Bread, a recipe app for sharing cookbooks with friends; Not Bread Alone, a protein-first food and fitness log; The Kitchen, which runs a weekly pickleball group; and Reply Required, family messages that pause a teen's apps until they reply. I build them alongside coding agents, with the skills and guardrails that let several sessions work the same codebase at once.
Away from the code, I write about faith — how reality, love, and teamwork fit together — on my Substack ↗.
Staff Software Engineer
Kenect
Mobile lead and top contributor to Kenect's React Native flagship app, driving enterprise-scale work across mobile, backend, and platform. Drove Otto, Kenect's in-app AI assistant — an agentic Spring AI service that tool-calls into messaging, review, and analytics services — and contribute to atlas and Kenect Toolbox, the MCP servers behind Kenect's coding agents. Architected AuthKit (Flutter / React Native) with MFA and account recovery, built the auto-generated KenectClient (TypeScript + Dart) API library, and contributed architecture across the Auth, Messaging, and Notification Spring Boot services. Built a Claude Code telemetry stack (OpenTelemetry → Grafana), not yet rolled out, and am designing in-app calling (masked calling / call queue).
Senior Mobile Software Engineer
Kenect
Top contributor to the React Native / Expo flagship app since 2021. Shipped the push-notification system and performance / observability work (New Relic), and standardized the EAS Build & Submit release pipeline — later extending it to the acquired AutoLabs Flutter app. Plus platform tooling — OpenAPI client generators, Terraform modules, and tracing/logging.
Senior Mobile Software Engineer
Bayer Crop Science (Monsanto)
Native iOS in Swift & Objective-C and React Native, with Node.js / TypeScript APIs and AWS DevOps. Earned two Pillar Awards — for customer support and for teaching iOS to LaunchCode students.
iOS Lead Instructor
LaunchCode
Built and taught the iOS curriculum for LaunchCode's programming course (part-time, alongside Bayer).
iOS Developer
Asynchrony Labs
Built an Objective-C app using web sockets for real-time peer-to-peer communication, with iOS DevOps on Jenkins.
iOS Developer · Contract
Ochre
Shipped "DispoCam" in Swift — image uploads to AWS S3 with a paid Apple Pay subscription, and release automation via Fastlane.
iOS Developer
University of Missouri–Columbia
First native iOS roles while finishing my Computer Science degree.
Web Developer · PHP / WAMP
Food & Agricultural Policy Research Institute
My first professional dev role, during college — built a budget and risk-management simulator for farmers in HTML/CSS/JS, PHP, and MS Access, hosted on IIS.
University of Missouri–Columbia
B.S. Computer Science · Minor in Mathematics
Washington University in St. Louis
Biomedical / Medical Engineering
Let's talk.
Hiring for a staff-level engineering role? The fastest way to reach me is email.