Open to platform roles · [email protected]

Alan Gaudet. AI Software Developer.
I troubleshoot, plan, and oversee, whatever the system runs on.

I work on the plant floor and now build AI agents on nights and weekends. The tools change, but the approach stays the same — trace the failure, plan the next move, and keep eyes on what the system is actually doing.

The tools change. The approach doesn't. Trace the failure, plan the next move, watch what the system is doing in production.

Independent

LangGraph, RAG, evals, and output guards. Agents that fail loudly, log honestly, and stay debuggable.

Supply Chain Multi-Agent System

Three habits that survive the domain change.

01

Troubleshoot

Start at the failed output and walk back through every condition until the cause is in hand. Years of doing this on real PLCs taught me to make the LLM narrate — not reason about ladder semantics from scratch.

Rung Reader L5X AST walker · hardware-free CI
02

Plan

Break the work into shippable milestones with typed state and clear gates. Real-LLM integration tests run in CI, so a regression shows up before merge instead of after.

Supply Chain Agents LangGraph StateGraph · interrupt() approval
03

Oversee

Output guards with deterministic rules first and an LLM judge second. Self-hosted Langfuse for traces. Nothing ships as a black box.

M12 Output Guardrails PII refusal · fabrication judge · Langfuse traces

Five projects. Each one proves a different thing.

Real code under CI, all open source. Agent platforms, mobile apps, systems tools.

supply-chain-agents

Supply Chain Multi-Agent System

Three specialist agents coordinating through a typed LangGraph state machine

PythonLangGraphLlamaIndexFAISSFastAPIStreamlitLangfuseOllama
TestsUnit + real-LLM integration tests in CI
EndpointsREST API with SSE streaming
ObservabilitySelf-hosted Langfuse topology
GuardrailsRegex hard-block + LLM judge, fail-open
CI status for supply-chain-agents
rung-reader

Rung Reader

AI-powered Allen-Bradley PLC ladder logic troubleshooter

PythonLangGraphFAISSsentence-transformersFastAPIpycomm3Allen-Bradley L5XOllama
TestsUnit + integration tests in CI
DependenciesZero cloud dependencies
ResilienceGraceful degradation without LLM/PLC/Redis
TestingMock-swappable pycomm3 driver
CI status for rung-reader
irontide

IronTide

From-scratch Rust BitTorrent engine targeting libtorrent-rasterbar parity

Rust 2024tokioio_uringSlintaxumHTMX
Protocols31 BEP protocol extensions
Architecture17-crate workspace
TestsUnit + integration + property tests; clippy-clean
PerformanceThroughput benchmarked vs. libtorrent
CI status for irontide
debt-tracker

Debt Tracker

Offline-first Android debt tracker, published on Google Play

KotlinJetpack ComposeMaterial 3RoomWorkManagerCoroutines
DistributionPublished on Google Play
ArchitectureMVVM with Repository pattern
PersistenceRoom DB with atomic transactions
BackupAutomatic retention, Snapper-style pruning
CI status for debt-tracker-kotlin
claude-code-telegram-rs

Claude Code Telegram Bridge

Single-binary Rust service bridging Telegram to Claude Code sessions

Rusttokioteloxidecomraksystemdserde
RuntimeSingle-binary Rust + tokio async
Performance78x faster startup vs Python predecessor
Deploymentsystemd notify with watchdog
FormattingMarkdown to Telegram HTML, smart splitting
// get in touch

Building agents that have to work in the real world? Let's talk.

Production constraints, domain knowledge, observability, the boring parts. That's the work I'm interested in.