Arthur Locke

Aspiring DevOps & Cloud Engineer
DevOps and Cloud Engineer with an 8+ year QA background bringing automation discipline, reliability rigour, and process thinking to infrastructure work. Hands-on, project-based expertise in Oracle Cloud Infrastructure (OCI), AWS, Kubernetes, Terraform, and GitHub Actions CI/CD pipelines — building infrastructure automation including one-button Kubernetes deployments, Terraform-managed multi-service clusters, and WireGuard VPN networking on Oracle Cloud Free Tier.
Projects
- Built and deployed an enterprise-scale platform across the full Microsoft stack, evaluating a Microsoft-native service (Copilot Studio, Power Platform, Azure OpenAI) against custom pro-code for every architectural capability before defaulting to custom code — 15 documented ADRs recording the trade-off analysis.
- Two independent, platform-native CI/CD pipelines in GitHub Actions, each verified end-to-end via live deployments: one provisions and redeploys the entire Azure side from Bicep (Key Vault, API Management, Container Apps, Azure OpenAI, AI Search, Content Safety) via OIDC federated credentials with no stored secret; the other promotes both Dataverse business data and a live multi-agent Copilot Studio deployment between Power Platform environments via a dedicated Dataverse Application User.
- Cost discipline: actual Azure spend through full completion was $0.39 against a $180/month guardrail — every architectural choice evaluated against its free tier first, backed by a dedicated cost analysis and a directional production-scale cost estimate.
- Designed and built a multi-package platform with clean service boundaries — a shared core library, two independent MCP servers, an execution engine, and a reporting service — each independently testable and deployable, integrating only through data rather than direct imports.
- Containerized the two standalone services (testrail-mcp, qa-regression-dashboard) with multi-stage Dockerfiles and Compose orchestration, verified live via docker compose up; live container runs caught real cross-platform bugs a passing test suite couldn't.
- Config-driven, not hardcoded, on every axis that matters for reuse: TestRail suite targeting, custom case-template field mapping, even which Unreal Blueprint class is the player pawn are settings, not source code — pointing the platform at a different studio's project needs a YAML edit, not a redeploy.
- Designed and built a self-hosted AI support-ticket triage platform with strict architectural separation across independently swappable pieces — Chatwoot (unmodified), two self-hosted MCP servers, and Claude as a replaceable intelligence provider — documented across 6 ADRs recording the actual reasoning.
- Docker Compose orchestration across four services (FastAPI webhook pipeline, two MCP servers, Postgres with pgvector) verified live against a real running stack, not just a successful build; found and fixed 10 real cross-service bugs this way, including Chatwoot's SSRF protection silently blocking same-network webhook delivery and an asyncpg connection pool broken by spanning two different asyncio event loops.
- Deployed on Google Cloud Run behind Caddy, with Redis for queueing; evaluated dedicated/managed vector databases and hosted embedding APIs before choosing a zero-infrastructure local-embedding approach (pgvector + fastembed/ONNX) to avoid a new vendor dependency.
- Optional AWS cloud path: 5 Terraform modules (CloudWatch, least-privilege IAM, feature-flagged Lambda/DynamoDB/X-Ray) mirroring telemetry into CloudWatch via EMF metrics and log export — deployed and destroyed for real against a live AWS account across two regions, verified with live AWS CLI calls.
- GitHub Actions CI/CD: lint/typecheck/test/build gate on every push, Terraform fmt/validate/plan on infrastructure changes, and a manual-approval-gated deploy workflow — configured the GitHub Environment's required-reviewers protection rule via the REST API.
- Found and fixed real bugs through live verification: a gzip-compressed OTLP ingest path silently failing, an IAM user needing force_destroy since its access key is issued out-of-band, a Docker Compose --env-file resolution gap.
- Built a from-scratch MCP server wrapping TestRail's REST API v2, mirroring the UseResponse MCP's dual-transport architecture: stdio locally, streamable-HTTP on Google Cloud Run, deployed via gcloud run deploy --source ., with OAuth 2.0/PKCE + signed JWT security.
- Two-tier tool-gating: five category flags stacked with an optional named-tool allowlist that can only narrow, never widen, permissions — deny-by-default except reads.
- Always-on list_tool_policy introspection tool; automated test suite validates the registered tool list matches policy exactly across representative flag combinations.
- Designed and built a reproducible Kubernetes CKA exam preparation platform running on a local kind cluster with deterministic task verification and a local AI agent solver (no cloud API key required).
- Task system: each task injects a broken Kubernetes state (misconfigured Services, bad container images, missing RBAC, stuck PVCs, scheduling taints) into a real cluster; a deterministic verify.sh script confirms the fix.
- Killercoda integration: generator produces browser-ready scenario packages published to a companion repo — zero local setup for end users.
- Designed fully automated GitHub Actions CI/CD pipeline deploying production Kubernetes on OCI Always Free Tier — equivalent infrastructure costs $250+/month on AWS.
- Infrastructure as Code: Terraform (HCL) for OCI resource provisioning; Ansible for WireGuard VPN, dnsmasq, and Cloudflare DNS (DNS01 cert challenge) — replaced Terraform null_resource with Ansible for idiomatic configuration management.
- Kubernetes hardening: RBAC, NetworkPolicy, HPA, ResourceQuota, LimitRange, PodDisruptionBudget via dedicated manifests; zero-trust WireGuard VPN as the sole ingress to n8n, pgAdmin, and Grafana.
- 5-phase AI-driven test pipeline: Planner → Generator → Debug → Healer; 39 Playwright TypeScript tests, all passing.
- Self-healing locator repair eliminates manual maintenance on UI changes.
- 10 CLI playbooks for repeatable, agent-executable test execution — CI-ready agentic automation.
- Contract-first OpenAPI testing platform built as a TypeScript pnpm monorepo (9 packages/apps), containerized end-to-end with Docker multi-stage builds (node:20-alpine).
- CI pipeline: type-check → unit tests → Docker container build → live contract validation — fails on violations, warns on upstream drift; 24/24 unit tests and 8/8 contract tests passing, confirmed in CI artifact.
- Drift detection engine performs structural diff between the upstream API spec and the internal contract, surfacing breaking changes before they reach production.
- Developed a Next.js 15 single-page template for professional and business use (TypeScript, Tailwind CSS v4, shadcn/ui, Credly certification badge integration), with environment-based builds configured for Meta Business Verification readiness — the platform this multi-facet site itself is built on.
Skills
Cloud Platforms
Container & IaC
CI/CD
Networking & Security
AI & MCP
Monitoring
Development
Cloud Provider Experience
- n8n on EC2 — Docker, NGINX, Custom Domain, SSL
Dockerized n8n behind an NGINX reverse proxy on EC2, with a custom domain and Let's Encrypt/Certbot TLS.
- IAM, Lambda & S3 Workflow
n8n workflow invoking a Lambda function and writing to S3 via IAM roles — no static credentials stored.
- Secrets Manager-Backed Deployment
n8n secrets fetched at container startup from AWS Secrets Manager via an EC2 instance role, not stored on disk.
- S3 Backup & Lifecycle Rules
Cron- and GitHub Actions-triggered backups of n8n data to S3, with lifecycle rules to expire old archives.
- NGINX → ALB Migration
Migrated a reverse-proxy setup to an AWS Application Load Balancer for managed TLS termination and health checks.
- OCI Infra Pipeline — Production Kubernetes
One-button Terraform + Ansible + Helm pipeline deploying production-grade Kubernetes on OCI's Always Free Tier.
- WireGuard VPN for Cluster Access
Zero-trust VPN as the sole ingress path to in-cluster dashboards (n8n, pgAdmin, Grafana).
- DNS-01 Certificates for Private Dashboards
cert-manager + Cloudflare DNS-01 challenge issuing TLS certs without exposing services publicly.
- Kubernetes → Helm Extraction
Converted hand-applied cluster resources into a reusable Helm chart.
- Node Pool Migration & Cost Tuning
Migrated node pools within Always Free Tier limits to control cost.
Experience
DevOps & Automation Engineer — Freelance
2023 — Present- Deployed and managed production Kubernetes workloads on Oracle Cloud Infrastructure for multiple clients: n8n (queue mode), PostgreSQL, pgAdmin, Prometheus + Grafana, Cert-Manager, Ingress-Nginx — full cluster lifecycle ownership.
- Infrastructure as Code: Terraform (HCL) for OCI provisioning; Ansible for WireGuard VPN, dnsmasq, and Cloudflare DNS (DNS01 certificate challenge).
- Developed full-stack websites using Next.js and PayloadCMS with API-first headless CMS architecture.
Advanced Quality Assurance Specialist | Junior Release Manager — Keen Software House a.s.
Aug 2020 — Jul 2026- Architected SE Tester AI Agent System — a three-agent pipeline (Planner, Generator, Healer) producing and self-healing XML test scripts; MCP server provides real-time game control for playbook execution.
- Connected the internal n8n instance to Claude via MCP server — the team can observe, diagnose, and create automation workflows via natural language, no technical knowledge required.
- Built and deployed the UseResponse MCP server — dual transport (stdio locally, streamable-HTTP on Google Cloud Run for scheduled Cloud Routines), OAuth 2.0/PKCE with signed JWTs, seven independently-gated tool categories (deny-by-default).
- Collaborated on DevOps initiatives, expanding into cloud deployments and CI/CD automation pipelines.
QA Engineer — Charged Monkey
Oct 2017 — Aug 2020- Sole QA for most of the tenure, owning end-to-end test strategy, automation pipeline, and release management across iOS, Android, and Amazon platforms; briefly led a small, two-person QA team.
- Established QA practices from the ground up; mentored new team members.