I build infrastructure for engineers: platform systems, developer
tooling, AI/LLM workflows, type-driven product architecture, and
performance work across large production codebases.
Recently that has meant structured backend/entity work, schema and
runtime-type infrastructure, backend hot reloading, distributed
agent orchestration, LLM alert workflows, customer-critical product
migrations, and performance debugging.
Reach me by filling in the blank:
sidmcheath_gmail.com.
Shipped 7 production projects and 155+ customer/incident fixes
across platform infrastructure, foundational product features,
customer-priority workflows, and developer-experience systems.
Built a hierarchical training module MVP in under two weeks:
module → page → block → question → answer/response.
Added dynamic parametrization to a cross-language type system
that powers generated Python types, TypeScript types, API
clients, runtime metadata, and dynamic UI surfaces.
Designed and shipped LLM-enabled alerting workflows that analyze
platform data, fire structured recommendations, and hand users
into contextual chat.
Migrated customer-critical process workflows from tree models to
DAGs with edge entities, workflow-aware traversal, and graph UI
rendering.
Worked on distributed AI-agent infrastructure where external
events trigger ephemeral Kubernetes workloads coordinated over
NATS JetStream.
Engineering Notes
Types are infrastructure
In a large product, schemas are not just correctness tools. They
become APIs, SDKs, runtime metadata, form renderers, validation
layers, permissions, and migration boundaries.
SchemaYAML source of truth
→
Generatorparser, gates, metadata pass
→
Typed surfacePython, TypeScript, API wrappers
→
Runtime toolsforms, pickers, validation, docs
One declaration becomes compile-time types and runtime behavior.
Recovery paths matter more than happy paths
Event-driven systems look straightforward until pods die,
consumers get stuck, messages are replayed, or state needs to be
reconstructed after restart. Good infrastructure makes recovery
boring.
External eventSlack, GitHub, Jira, web
→
Durable queueinput, ack, replay state
→
Control planereconciles queue, pod, and status signals
→
Workerdoes work, emits lifecycle and outcome
The useful system is the loop, not the happy-path arrow.
Developer experience compounds
A repeated workflow does not need to look important to be worth
optimizing. Backend HMR, Git performance, and fast local loops
create leverage because every engineer pays that cost every day.
AI-assisted engineering needs boundaries
AI tooling is useful for parallelizing boilerplate migrations and
frontend iteration. Human judgment should own schema design,
security models, parser/cache correctness, and product
constraints.
Experience
Uncountable · Software Engineer
October 2025 -- Present
Platform engineering work across structured backend systems,
TypeSpec/runtime metadata, developer experience, LLM/agent
infrastructure, performance optimization, and
customer-critical product workflows.
MathWorks · Engineering Development Group Intern
May 2023 -- August 2023
Built MATLAB code-intelligence tooling, TypeScript indexing,
dataset-labeling integrations, and compilation workflow
optimizations for internal developer tools and early
LLM-powered assistant infrastructure.
Toronto Early Cognition Lab · Software Developer
September 2022 -- December 2022
Independently delivered a full-stack video-processing system
for secure upload, annotation, anonymization, permissions,
audit logging, and researcher handoff.
16Bit AI · Software Engineering Intern
May 2022 -- August 2022
Stabilized production medical-imaging model workflows,
fixed cross-browser EXIF preprocessing failures, and
supported real-time patient submission, validation, and
clinical audit infrastructure.
About
I studied Computer Science and Mathematics at the University of
Toronto. I am drawn to large systems, developer-speed
infrastructure, scientific/product platforms, and tools that turn
hard-won engineering patterns into reusable leverage.