Senior DevOps · Full-Stack · AI-Native

Bao Phung Ngoc
builds the platform
and the agents that ship it.

// 11+ yrs · AWS · GCP · Azure · IaC · AI-agent orchestration

Senior DevOps/SRE who treats AI as a first-class part of the toolchain — I design the guardrails, skills, and verify loops that let agents propose and build code safely, while a human owns the merge. Below is one thing that proves it: a server-authoritative game platform I built end-to-end with an agent-driven pipeline.

playground · memory
match the stack 0 moves · 0/8 pairs
all pairs — platform proven. ↺ to replay
11+
years engineering
3
cloud providers
10+
k8s/gitops projects
+30%
reliability gain
-20%
infra cost
6
AI tools daily
01 — featured work

A game platform
run by a pipeline of agents.

A personal build that exercises the whole skill set at once: Go backend, embedded Lua sandbox, Postgres, Unity client, OTel observability — and an agent toolkit (skills + contracts + a live verify loop) that ships a new game on top of it.

Game Platform — unnamed
solo-built · 10 repos · 6 layers

Server-authoritative game platform. Game rules are Lua scripts stored in Postgres and run in a sandboxed VM — ship a new game's logic without a client build. The SDK is a Unity UPM package; the UI is built from JSON contracts; the whole loop is driven and verified by agents.

  • Lua-authoritative engine — rules live in the DB, run sandboxed; only a game.* bridge is exposed.
  • Contract-driven UI — a screen is JSON; ContractBuilder instantiates it, the verify loop diffs the live tree against it.
  • Zero per-game tables — one schema (battle_sessions.state JSONB + idempotency keys) serves every game.
  • Agent pipeline — a five-stage loop (spec → contract → assets → build → verify) plus a per-game playtest skill.
  • Full observability — OTel → Tempo/Prometheus/Loki/Grafana; 5 dashboards provision on boot.
L6PresentationUI Toolkit scenes
L5Game Domainper-game C# DTOs
L4Unity SDKUPM package
L3Game Luasandboxed rules
L2Bridgegame.* API
L1TransportGo + Postgres
a screen is JSON — the verify oracle
{ "screen":"WinBanner", "template":"popup.banner",
  "theme":"kawaii", "title":"Level Clear!",
  "buttons":[{"id":"banner-retry"},{"id":"banner-levels"}] }
// ContractBuilder.Build() → live UI; UiDump asserts the ids.
Go 1.25gopher-luaPostgres 15Unity 6 / UPM OTel · Tempo · Prometheus · Loki · Grafanafly · neon · vercelagents
02 — what I run on

The toolchain, mapped.

Cloud & Platform
AWS (EKS · ECS · Lambda · Glue · Redshift · WAF · S3 · CloudFront)GCP (GKE · App Engine · Cloud Run)Azure (AKS · Functions)
IaC & Containers
TerraformTerragruntCloudFormationAnsiblePackerDockerKubernetesHelmArgoCDSpinnaker
AI-Native Development
Claude / Claude CodeCursorGitHub CopilotAWS Bedrockself-hosted PR-AgentRAG / Vector DBcontext engineering (CLAUDE.md · MCP)AI PR guardrails
Observability
PrometheusGrafanaOpenTelemetryDatadogNew RelicLokiELK / Opensearch
Engineering
Python (FastAPI · Django)Node.js / TypeScript.NETJava / SpringGo · Rust (familiar)LuaBash · Groovy
Security / Zero-Trust
Vault · AWS Secrets · SOPSSonarQube · Trivy (SAST/DAST)least-privilege IAMsecret-leak remediation