OPERATIVE ASSIGNMENT
COMPLETED

Graduate Researcher (M.S. Thesis)

University of Georgia

Aug 2024 – Aug 2026 · Athens, GA

CONTEXT

Serverless workloads on cloud spot instances offer 70–90% cost savings but suffer frequent preemptions. Every prior system achieved reliability by blending in on-demand nodes, negating the cost advantage that motivated spot in the first place.

THE WORK

WHAT I TOOK ON

Three compounding problems had to be solved: reactive checkpointing was too slow and created too much overhead to be useful; reactive autoscaling triggered after preemptions had already landed; and the retry service was single-threaded - retries queued linearly and hurt success rates rather than recovering them.

WHAT I DELIVERED

Switched to proactive scaling: Kaplan-Meier survival curves fit on emulator preemption traces give early warning, gating a Thompson Sampling bandit on live failure and cost data to scale before preemptions hit without overprovisioning. Rebuilt the retry service as a 50–100 thread concurrent executor - this single change delivered a 40–50% success rate boost. DAG-aware selective checkpointing kept overhead manageable. Result: 39% → 89.03% success at $0.018/run. Accepted at ACM Middleware '26.

KEY CONTRIBUTIONS

  • Designed and built FaaSpot (ACM Middleware '26): ~17.5K lines of Python running serverless DAG workflows on spot
  • Built FaaSpot's Kubernetes platform from scratch: 16-node kubeadm VM cluster on bare metal running Fission, with NodePort routing and per-task ConfigMaps
  • Wrote FaaSpot's two-layer autoscaler: Kaplan-Meier survival model gates a Thompson Sampling contextual bandit that scales Deployment replicas onto safer nodes, beating the best fixed policy by 11–17pp on success
  • Built checkpoint and lineage-based retry controllers on transactional MySQL, resuming failed runs from the nearest checkpoint
  • Raised workflow success from 39% (naive spot) to 89.03% at $0.018 per run - under half the best baseline's cost, 2.3× lower latency

EQUIPMENT MANIFEST

PythonKubernetes (kubeadm)FissionMySQLAWS SpotPrometheus