Tor Loch · operator online · accepting contract

Veteran full-stack developer. Agent architect. Professional nerd.

Twenty-five years writing code that ships, breaks, gets fixed, and ships again. These days I spend most of my time pair-programming with Claude Code agents and running my own LLM stack on hardware I built — because it's fun, because clients pay for it, and because the thing I love most about this work hasn't changed since 2001: solving the puzzle nobody else wants to open.

01 · capabilities

What stays the same when everything changes.

PHP grew up. .NET went cross-platform. JavaScript ate the world. The stack list never stops rotating — and underneath all of it, the actual job hasn't really changed: find the real problem, build the simple version, ship before it's perfect, watch what breaks, fix that. Repeat for twenty-five years.

rack-01 :: capabilities/online 15 modules booted
U30AI agent architectureMulti-agent systems, prompt eng, tool-use harnesses, evals, RAG. Production agents that don't quietly hallucinate the rent away.specialty
U29Claude Code CLI workflowsCustom skills, slash commands, hooks. Subagents in parallel for research and review.daily driver
U28MCP server developmentModel Context Protocol servers — custom tools and data sources for Claude and other agent ecosystems.specialty
U27Local / offline LLM stacksOpen-source models on my own server stack. No data leaves the box.self-hosted
U26Custom skills + server stacksBuilt from scratch. Privacy-first. My hardware, my rules.built
U25Automation engineeringHobby and profession alike. Two hours teaching a machine beats two minutes doing it twice.always
U24Containers + DevOpsDocker, compose, AWS, Azure DevOps. Pipelines, repos, EC2, Lambda, S3, CloudFormation.cloud-native
U23Backend servicesPHP, .NET, Node, Python. The kind of code that quietly runs for a decade.25y
U22Database engineeringMariaDB, SQL Server, Postgres. The database is always right.fluent
U21CMS plugin engineeringUmbraco, WordPress + WooCommerce, Drupal — custom packages, plugins, APIs.built
U20Salesforce platformManaged packages, plugins, API integrations.built
U19Frontend & frameworksReact, Vue, Svelte, TypeScript, Tailwind.fluent
U18Design suiteFigma, Adobe Creative Cloud (Photoshop, Illustrator, XD, After Effects).fluent
U17Integration toolingPostman, Zapier, n8n, webhooks.fluent
U16Edge & infraCloudflare Pages/Workers/R2, Linux, GitHub Actions, CI/CD.fluent
02 · current orbit

What I'm running right now.

Three things drive most of my work this year: agentic CLI tooling, self-hosted LLM infrastructure, and automation that stitches the rest together. Side projects look like client work — same craft, same standards.

cli :: 01

Claude Code, all the way down.

Claude Code CLI agents are how I ship now. Custom skills I wrote myself. Slash commands for the things I do every day. Hooks that catch mistakes before they hit main. Subagents running research and review in parallel. The most workflow-changing tool I've adopted since version control.

claude codeskillshookssubagentsmcp
local :: 02

Local stack. Offline by design.

For privacy-sensitive or air-gapped work, I run open-source LLMs on my own server stack. Custom skill packs. Custom orchestration. No data leaves the box. Same agent ergonomics — on hardware I own and audit.

open weightsself-hostedair-gappedcustom skills
auto :: 03

Automate or perish.

Automation is the through-line of my whole career. Scripting, cron, queues, pipelines, agents wired into workflows. Side projects look exactly like client work. Hobby code, professional code — same craft.

scriptingcron + queuesagentspipelines
03 · operator

Professional nerd. Twenty-five years deep.

I love this stuff. Building, breaking, fixing, shipping. If you've got a problem that needs figuring out, that's the part I find fun.

I started writing code before the dot-com bust and never stopped. The languages have rotated three times since then; the work hasn't really. The undocumented bug. The legacy codebase nobody wants to open. The agent that "should be simple" but became a tar pit in week three. The puzzle. The chase. The "aha" at 2 a.m. that you can't share with anyone because they wouldn't get it.

Yes, I'm a professional nerd. Veteran full-stack engineer who games on weekends, builds custom Claude Code skills on weeknights, and has strong opinions about which Linux distro is "home." I run my own offline LLM stack because I like the idea of agents that don't phone home. I write production code that runs for a decade. I find this fun.

If you've got something that needs figuring out — a build, a rescue, a gnarly migration, an AI agent that's supposed to be easy — let's talk.

// silent operator
04 · deployments

The receipts. Live, in production.

Three flagship builds from the last four years — a national brand platform, a full CMS replatform, and an AI-wired commerce stack. All of them still serving customers right now. Click through; they're live.

https://www.ars.comlive ars.com homepage — ARS/Rescue Rooter national HVAC and plumbing services
deploy :: ars.com · 2022–2026

ARS / Rescue Rooter

Lead Web Developer · flagship platform

The nation's largest residential HVAC and plumbing network — 70+ company-owned locations across 24 states — with its flagship site in my hands. I brought a sprawl of legacy, third-party-hosted brand sites home: into Azure, into modern C#, onto Umbraco.

  • Migrated legacy brand sites off third-party hosts into Azure
  • Translated legacy code from multiple languages into .NET 8 C#
  • Umbraco CMS upgrades v9 → v17, with custom plugin development
  • Built custom reporting + monitoring tools for the whole web estate
  • Directed outside agencies on new features and acquisition rollouts
umbraco 9–17.net 8 / c#azurega4custom plugins
visit ars.com
https://www.ajperri.comlive ajperri.com homepage — A.J. Perri HVAC and plumbing services in New Jersey
deploy :: ajperri.com · 2022–2026

A.J. Perri

Lead Web Developer · full CMS replatform

A New Jersey institution since 1971 — 300+ employees serving 11 counties, an ARS company since 2014. I moved the whole site off WordPress and onto Umbraco: content, backend integrations, and analytics, with design implemented alongside agency partners.

  • Complete WordPress → Umbraco migration, content and backend
  • Custom .NET backend integrations behind the new CMS
  • GA4 analytics implementation across the funnel
  • Figma-driven design implementation with agency designers
wordpress → umbraco.net / c#azurega4figma
visit ajperri.com
https://www.westerncpe.comlive westerncpe.com homepage — Western CPE continuing education for tax and financial professionals
deploy :: westerncpe.com · 2026 – now

Western CPE

Senior Software Engineer · current post

The NASBA-certified leader in continuing education for tax and financial professionals, running since 1991. I'm the engineer wiring AI into a real commerce stack — RAG over the sales and marketing data living in Salesforce, WordPress, and WooCommerce, so the business can actually ask questions of it.

  • AI RAG pipeline across backend sales + marketing databases
  • Salesforce, WordPress + WooCommerce platform integrations
  • ActiveCampaign ↔ GA4 customer cross-referencing
  • Proprietary reporting dashboards (the NDA kind)
  • GitHub Actions CI/CD shipping to AWS
ai ragsalesforcewoocommerceactivecampaignga4gh actionsaws
visit westerncpe.com
05 · handshake

Tell me what you're building.

Contract engagements, agent design, the rescue mission for the codebase nobody wants to open. A brief, an idea on a napkin, or a problem that's been in the backlog for a year — send any of it. I read everything. I reply within a day.