
Swftbox validates its GCP-to-AWS migration and lays a Terraform IaC foundation
VeUP independently audited Swftbox’s post-migration AWS estate in me-central-1 against best practices, delivered a modernization target architecture mapping each workload to its runtime (ECS, S3+CloudFront, Lambda), and laid a per-repository Terraform IaC foundation.
The challenge
Swftbox had moved its cloud platform from Google Cloud Platform to AWS but needed an independent engineering review to confirm the migration was sound before scaling on it. The platform spans multiple production workloads — a fleet of active application repositories deploying to a mix of Amazon ECS clusters, S3 + CloudFront front ends, and Lambda utility services in me-central-1. Two problems stood in the way of confidence. Nobody had checked the post-migration estate against best practices, so anti-patterns could be hiding anywhere. And the application infrastructure lived in the console rather than as reproducible Infrastructure-as-Code, making environments hard to reason about and deployments hard to make reliable.
The solution
VeUP came at it three ways. First, the audit: VeUP Engineering went through the migrated AWS workloads against best practices and laid out exactly how to fix each anti-pattern it found. Second, the modernization picture: a high-level target architecture mapping each active repository to its correct AWS runtime — Amazon ECS, S3 + CloudFront, or AWS Lambda. Third, the codebase: guidelines and modules for rebuilding the migrated workloads as Terraform IaC, organized per-repository across dev/QA/prod state, on top of Swftbox’s existing AWS network stack. The audit then fed a follow-on modernization roadmap: migrating CI/CD from GitLab CI to GitHub Actions; a reusable AWS Secrets Manager module wired into the pipelines; and deployment-reliability enhancements — end-to-end visibility from Amazon ECR through Amazon ECS, post-deploy ECS health checks, and circuit-breaker auto-rollback to the last known-good task definition. Pipeline deploys use AWS OIDC (keyless, role-assumed; no static keys).
Production outcomes
| KPI | Result |
|---|---|
| Production outcomes | Swftbox got an independent verdict on its GCP-to-AWS migration — checked against AWS best practices, with a clear path to fix every anti-pattern found; a target architecture mapping each active workload to its right AWS runtime (ECS / S3+CloudFront / Lambda); a Terraform foundation with module guidelines and a per-repository dev/QA/prod structure; and a recorded knowledge-transfer session at handover. |
| Engagement window | The target architecture took shape in January 2025, the main build ran from June, and by October 2025 the audit, modernization report, and IaC foundation had all been handed over — with the modernization roadmap as Swftbox’s forward path. |
| Cost / TCO posture | Compute placement decided on evidence — a Lambda-versus-ECS cost break-even analysis by request volume settled where the utility APIs run — with right-sizing and cost optimization landing through the IaC foundation and the modernization roadmap. |
| Lessons & continuation | A post-migration audit gives a customer a validated baseline before they scale — anti-patterns are cheaper to fix on paper than to discover in production; mapping each active repository to its correct runtime (ECS vs S3+CloudFront vs Lambda) is the modernization decision that matters; deployment reliability (ECS post-deploy health checks + circuit-breaker auto-rollback) removes the manual-recovery gap on a revenue-bearing logistics platform. |
In production in me-central-1.