Senior Full Stack AI EngineerLondon, UK

Portfolio

Muhammad Zia · Senior Full Stack AI Engineer

Agents that take real actions inside live business systems, with the evals that keep them reliable.

Senior Full Stack Engineer with 6 years shipping production systems in TypeScript, React, and Node.js, now focused on applied AI. I build agent platforms that take human-approved actions inside live business systems, along with the MCP servers, evaluation pipelines, and safety layers that keep them reliable.

Where AI meets full-stack:
I ship the full surface: React and Next.js frontends, Node backends, and the AI layer between them. Current work is an agentic platform on Cloudflare (Workers, Workers AI, Durable Objects, Vectorize) that operations and marketing teams use from a conversational interface. It processes 4B+ LLM tokens a month. Agents reason over internal data and take write actions across workflows, records, and downstream processes. They hold no stored credentials, act only through the requesting user's own authenticated session, and every write needs explicit human approval. Module-scoped evals on every pull request plus nightly and weekly LLM-as-judge runs against recorded response cassettes catch model drift before users do.

Impact where it matters:
Production agents processing 4B+ LLM tokens a month, with judge scores held above 87% and eval cost cut from ~$30 to ~$4 a day. Platforms serving 200+ international teams and 10M+ records. Experimentation work contributing to conversion lifts of up to 34% for enterprise clients. Error handling capturing 99.8% of failures and cutting support tickets 47%. A design system that tripled feature velocity. CI/CD that made deployments 68% faster and cut cloud cost $2.4K/month.

Recent work:
  • Shipped a least-privilege agentic platform on Cloudflare processing 4B+ LLM tokens a month: human-approved write actions, no stored agent credentials
  • Own the eval loop: module-scoped evals on every pull request, nightly and weekly LLM-as-judge baselines, and response cassettes that flag model drift. Judge scores above 87%, eval spend down ~87%
  • Built a RAG Chrome extension so teams query Product Data Sheets in plain English from any tab, and a Claude-powered ingestion pipeline that turns operations spreadsheets into structured records, saving 2+ hours a day
  • Architected a schematics platform used by 200+ teams worldwide
  • Owned Convert's Shopify App end to end, led the Ractive.js to React migration, shipped Multi-Armed Bandit features tied to conversion lifts of up to 34%, and built an MCP server exposing the experimentation platform to LLM clients

Trusted to introduce structure in fast-moving environments, mentor engineering teams, and make the technical decisions that determine whether systems scale or collapse under pressure, whether those systems are traditional web apps or AI-powered products.

Top Rated Plus on Upwork · 100% Job Success Score · MSc Software Engineering, Kingston University
Open to Senior and Lead Full Stack or Applied AI roles in London or UK-remote. Skilled Worker visa — sponsorship transfer required.• London, UK

Impact

Career Highlights

I've won many hats as a software engineer, from full stack to architecture and everything in between. I've worked with a wide range of technologies and frameworks, and I've learned a lot from each and every one of them.

Agentic platform for live write actions

Present - 2024

Designed and shipped an agentic AI platform on Cloudflare (Workers, Workers AI, Durable Objects, Vectorize) that processes 4B+ LLM tokens a month. Novacom operations and marketing teams use it from a conversational interface; agents reason over internal data and take write actions across workflows, records, and downstream processes. Also shipped a React Chrome extension with a RAG pipeline over Product Data Sheets, and a Claude-powered ingestion pipeline that parses operations spreadsheets into structured fields, saving 2+ hours of manual work a day.

Least-privilege by design: agents hold no stored credentials, act only through the user's own authenticated session, and every write needs explicit human approval. Evals live in CI: the platform is split into independently testable modules (MDSD), so each pull request runs evals only for what it changes against a local Worker, and nightly and weekly LLM-as-judge runs against recorded response cassettes catch model drift against the previous baseline. Judge scores held above 87%; eval spend cut ~87%, from ~$30 to ~$4 a day.

AICloudflareAgentsEvalsRAGTypeScriptReact

Schematics platform for global operations

Present - 2024

Architect and ship core internal React applications at Novacom, including a schematics platform used by 200+ teams worldwide to model complex industrial diagrams: refineries, manufacturing plants, protection systems, tugboats, and more.

Owned end to end from system design through deployment, with scalability, clean abstractions, and long-term maintainability as the constraint.

ArchitectureTypeScriptReactNode.jsFull Stack

Production AI features: MCP, spam detection, semantic search

2025 - 2022

Shipped production LLM and agentic features across Convert and Instantly: an MCP (Model Context Protocol) server exposing Convert's experimentation data and actions to LLM clients as first-class tools (query experiments, read results, trigger actions), an AI email editor at Instantly that detects spam-trigger language in real time and highlights it inline, and a natural-language lead search that replaces rigid filter UIs with vector search.

Brought agentic workflows to an enterprise experimentation platform via Anthropic's open MCP standard. At Instantly, directly improved outbound inbox deliverability and let users find leads by describing an ideal customer profile in plain English.

AILLMMCPAgentic WorkflowsSemantic SearchReactNode.js

Shopify App, Ractive to React & Multi-Armed Bandit

2025 - 2021

At Convert, owned the Shopify App end to end: the app merchants install from the Shopify App Store to run A/B tests on their storefronts, including the OAuth install flow, embedded admin UI, storefront script injection, and the compliance webhooks required for App Store approval. Led the frontend migration from Ractive.js to React, shipped Multi-Armed Bandit optimisation, and was a core contributor to the Visual Editor every customer uses to build A/B tests without engineering.

Multi-Armed Bandit work contributed to conversion lifts of up to 34% for enterprise clients. Kept backend schema integrity and cut technical debt through proactive refactoring. Full-time March 2021 to February 2024, then part-time contractor through April 2025.

ShopifyReactNode.jsTypeScriptExperimentationMigration

Global error boundary & bulk tagging systems

2024 - 2022

At Instantly, architected a three-layer error-handling system (React Error Boundaries, Axios interceptors, and global runtime handlers) and built bulk tagging across campaigns, accounts, and emails.

99.8% failure capture and a 47% drop in support tickets. Bulk tagging was a major productivity win for high-volume users processing 10M+ records.

ReactError HandlingFull StackProductivity

Design system & CI/CD pipeline upgrade

2022 - 2020

Led a full frontend redesign and design system at Pocketnote, an EdTech platform matching tutors with students, and upgraded the CI/CD pipeline to Heroku.

3x developer velocity on feature delivery. Deployments 68% faster and cloud operating cost down $2.4K/month.

ReactDesign SystemCI/CDDevOpsNode.js

Vue.js to React.js migration

2019

Migrated the front-end from Vue.js to React.js at Cobija Industries, improving maintainability and performance.

Improved UI responsiveness and optimized backend interactions. Led a remote team of developers, providing technical direction and code reviews. Delivered stable, well-tested features.

ReactMigrationLeadershipFull Stack

mcp-policy-guard (npm)

2026

Most MCP servers ship demo-grade: no per-tool auth policies, no write confirmation gates, no audit trail, and no PII redaction on tool results. Those are exactly the gaps that show up the moment you expose a production SaaS to LLM clients.

Published Express-style middleware for MCP servers: glob policies (allow / deny / requireConfirmation), token-bucket rate limits, JSONL audit logs with hashed args, and result redaction. Wrap an existing server in a handful of lines.

Open SourceMCPAI SafetyTypeScriptNode.jsView →

ragbench-lite (npm)

2026

RAG pipelines usually ship on vibes: swap an embedder, glance at a chat demo, and miss retrieval regressions until users ask for a product code the vector index never hits.

Shipped a CLI + library that evaluates any pipeline against YAML golden questions: hit-rate@k, MRR, answer-contains, LLM-as-judge faithfulness, latency percentiles, and CI gates that fail on regressions.

Open SourceRAGEvaluationTypeScriptCLIView →

streamguard-react (npm)

2026

React Error Boundaries catch render crashes; streaming LLM UIs fail differently: stalls, mid-stream drops, and tool-call errors that would otherwise wipe partial tokens the user already saw.

Published a headless React library with useGuardedStream and StreamBoundary: typed stream failure classes, partial-preserving fallbacks, exponential retry, and optional resume-from-checkpoint.

Open SourceReactStreamingError HandlingLLMView →

react-crash-guard (npm)

2026

In production React apps, a single render error can take down the whole surface. Teams often rely on one generic boundary or none at all, and native boundaries never catch async failures, so users see a white screen and you lose usable error signal.

Published a layered pattern (global, route, and feature boundaries) with async-to-boundary bridging, error classification, recovery hooks, and pluggable reporters (including Sentry) so crashes stay contained, recoverable, and visible in observability tools.

Open SourceReactError HandlingTypeScriptSaaSView →

prompt-protection (npm)

2026

LLM products accept arbitrary user text; without a gate, prompt injection, jailbreaks, and data-exfiltration phrases can reach the model and override instructions or leak context. Naive blocklists create false positives and miss obfuscated payloads.

Shipped a zero-dependency, TypeScript-first guard with weighted scoring across dozens of rules, verify/strip/analyze APIs, Express and Next.js middleware, a React hook for chat UIs, and an optional Claude adapter for a second verification pass before tokens hit your provider.

Open SourceLLM SecurityTypeScriptNode.jsAI SafetyView →

Writing

Blog Posts

Posting my thoughts and learnings as I go.

Building an MCP Server for a Production SaaS: Lessons from Exposing an Experimentation Platform to LLMs

20/07/2026

Tool-first design, auth for LLM clients, idempotent writes, and the schema/prompt failures that show up once MCP hits production.

MCPLLMAgentic WorkflowsTypeScriptAPI DesignAI SafetyRead →

Agentic Write Actions: Letting an LLM Touch Your Production Database Without Losing Sleep

13/07/2026

The safety ladder from read-only to scoped autonomous writes, RBAC, audit trails, confirmation tokens, and a near-miss that forced the design.

Agentic WorkflowsAI SafetyLLMRBACSystem ArchitectureRead →

RAG Beyond the Demo: Shipping Retrieval Over Messy Internal Documents

06/07/2026

Chunking for datasheets vs prose, hybrid search for product codes, golden-question eval before you touch a vector store, and extension latency budgets.

RAGLLMEvaluationInformation RetrievalTypeScriptRead →

Cloudflare Workers AI vs Hosted LLM APIs: When Edge Inference Actually Wins

29/06/2026

Cost, latency, and quality from a real ingestion pipeline, plus a confidence-gated routing pattern between edge models and frontier APIs.

CloudflareWorkers AILLMEdge ComputingCost OptimizationRead →

Building Scalable Error Handling Systems: How We Reduced Support Tickets by 47%

01/02/2025

A deep dive into architecting production-grade error boundaries that capture 99.8% of failures, refreshed for streaming LLM UIs.

ReactNode.jsError HandlingSystem ArchitectureWeb DevelopmentSoftware EngineeringStreamingRead →

System Architecture Patterns for React/Node Applications: Building for Scale from Day One

09/02/2025

How proper architectural decisions early on can 3x developer velocity and prevent technical debt.

ReactNode.jsSystem ArchitectureSoftware EngineeringWeb DevelopmentTypeScriptBest PracticesRead →