Open to consulting & fractional CTO work
Chris Jones. web application architect.
Self-taught engineer, 20+ years shipping web apps. I help businesses make sense of web technology — and ship indie products of my own from Charlotte, NC.
~/.config/chris
01/
Currently building
Always Be Shipping 🚢
StreamABA
The operating system for high-growth ABA practices. Scheduling, billing, clinical docs, and data collection in one place.
TalkThrough
Stop typing bug reports. Just TalkThrough them. AI-powered QA documentation for PMs and engineers.
Distillbot
One review. All your bots. Consolidates AI code-review tools into one deduplicated summary.
03/
Experience
git log --author=me
2024 — Present
Occam
Director of Software Engineering
Lead engineering: strategy, architecture, delivery.
2022 — 2024
US Service Animals
Senior Software Engineer
Migrated legacy Yii2 stack onto Laravel + Filament.
2016 — 2022
Publicis Hawkeye
Senior Interactive Developer
Led 16-site Magento redesign; M1→M2 migration.
2015 — 2016
Potentia
Senior Developer
E-learning on Laravel + AngularJS + Vue.
2012 — 2015
Union
Technology Director
Led dev teams across PHP digital platforms.
2011 — 2012
SparkRebel
CTO
Symfony2, Mongo, Redis, ES, Node stack.
"Chris was a power-house when it came to integrating and implementing technologies to solve complex problems in the work we faced."
— Mark Kelleher · Engineering, US Service Animals
#ai
#claude-code
My Global CLAUDE.md: The Rules I've Built Up Over Time
Every time an AI agent burned me, I wrote a rule. Here's my entire ~/.claude/CLAUDE.md — the personal rules that travel with me across every project — and the scar behind each one.
2026-06-17 · ~10 min
#ai
#claude-code
A Linear workspace per project in Claude Code (no more reconnecting)
If you work across two projects with two different Linear workspaces, Claude Code's Linear MCP makes you disconnect and reconnect every time you switch. Here's how to bind each repo to its own Linear account so it just works.
2026-06-06 · ~8 min
#ai
#tooling
Stop stuffing every AI rule into one root file: apply-agent-rules
Most projects pile every AI agent rule into a single root CLAUDE.md and the file balloons past a thousand lines. Subdirectory rule files are a much better idea — and apply-agent-rules makes them practical.
2026-05-14 · ~6 min
$ ping leek.io
Got something interesting? Let's talk.