About
I build AI tools, ship them in production, then write about what breaks.
Phoenix, AZ
bob@bdigitalmedia.io
Bob Ulrich. Lead Site Reliability Engineer and AI Platform Engineer at Salesforce. 18+ years running services for Microsoft, Oracle, and Salesforce. Today I design autonomous multi-agent systems for production deployment support, while running a public loop of side projects, blog posts, and a small training business that puts the same patterns to work for other people.
Why listen
I'm not an AI researcher. I'm the person who has to make it work on Monday.
I do the same thing outside of work, in public, with receipts. Every post on tech.bdigitalmedia.io ships with working code: the clip storefront you can buy from, the proposals portal I use with real clients, the companion repo that ships drop-in GitHub Actions. If a post says "I did X," you can usually go read the code, install the plugin, or buy the output.
Writing tracks that loop. I build something, run it on actual users, notice where it breaks, fix it, and write about the repair. My recurring topics are cost, caching, latency, prompt drift, and eval, because those are what actually hit me. You will not find academic surveys here. You will find the reasoning someone uses when the bill, the uptime, and the developer experience are all the same person's problem.
The receipts
Where the opinions come from
Salesforce, present
Designed a 7-agent system for 24/7 deployment support automation. Cut per-investigation LLM cost 44–57% through token optimization and a confidence gate that skips redundant agent calls on ~70% of runs.
Salesforce, present
Lead SRE on the deployment pipeline infrastructure supporting 300+ services across commercial AWS and GovCloud (FedRAMP), holding 99%+ deployment success on EKS, Lambda, Step Functions, DynamoDB, and S3 driven pipelines.
Microsoft, 2012–2018
Operated SharePoint Online at 99.99% SLA for 100M+ monthly active users; later contributed to OneDrive, one of the largest consumer storage services in the world.
Public work, 2026
~9,800 lines of codified operational skills that turn Slack threads and tribal knowledge into repeatable automation. Debugging time went from minutes to seconds for the people who inherit them.
Full role history and measurements on the resume page.
What I'm working on now
Currently running
tech.bdigitalmedia.io
Thirty-plus long-form posts on Claude Code, agent design, and production AI workflow. Every post has an OG image, a text-to-speech audio track, and a companion code repo where applicable. The active series are LLM Fundamentals (provider-agnostic mental model) and a three-part sequence on automated PR review as Claude skills.
Claude-pilling: training for service businesses
A personalized zero-to-hero Claude guide that gets a service business owner from "AI is a smarter Google" to "Claude is doing the work" in about a week. No code, no terminal. If your business has repeatable workflows you hate doing, this is where I start.
bdigital.media clips & pics storefront
A per-clip, per-photo storefront for youth football families, replacing the gallery platform I was paying for. Astro on Cloudflare Workers, R2 for storage, Stripe Checkout, localStorage cart. Shipped in a day, written up in this build log .
Agent-driven content pipelines
Content operations for this site run on Claude Code skills I maintain publicly: draft generation, SEO and AI-detection gating, OG image rendering, TTS narration, Instagram carousel generation, cross-posting. Self-improving loop described in this post opens a daily PR with proposed fixes to my own tools.
New here? Start with When Slower Is Actually Faster in Claude Code . It is the workflow post most people email me about.
Selected writing
Six posts that show the shape
AI engineering
Part 1: Designing Automated PR Reviews with Claude Skills
Why AI code review is an engineering problem, not a prompt engineering one. The opening installment of a three-part series on building reviewers that survive 200 real PRs, not three cherry-picked examples.
Eval & quality
Your Claude Skill Is a Pile of Markdown. Ship It Like Software.
A six-phase SDLC for shipping a Claude skill: behavioral eval, packaging, independent review, CI drift checks, install verification, governance. Two hours of work, each phase catching a class of bug the one before it cannot.
Series
LLM Fundamentals
A provider-agnostic series that walks through tokens, text generation, context windows, tool use, and the agentic loop. Written for developers who want the mental model before they write a line of API code.
Workflow
Dumber Models on Purpose
Why reaching for a less capable model produces sharper architecture. The prompt becomes the design doc. Friction is the feature.
Shipping
Replacing Pixieset From My Phone on a Sunday Morning
Build log for bdigitalmedia.io/clips: Astro on Cloudflare Workers, R2 for storage, Stripe Checkout, zero recurring cost at rest. A live receipt for every post that follows it.
Automation
Self-Improving Claude Code Skills, Part 2
A SessionEnd hook and a daily GitHub Action that find failure patterns in my own tooling, propose additive fixes, and open a PR before I wake up. Skills that improve instead of silently rotting.
Working together
How to engage
For service businesses
Claude-pilling training
A personalized Claude Desktop setup plan for a service business owner. 15-minute intake, then a first week of short, focused sessions.
Start with a 15-minute intake →Direct · Anything else
bob@bdigitalmedia.io
AI platform work, consulting, writing, speaking, media projects. Tell me what you are working on. Straight answer in 24 hours.
Send a message →