Why optimisation belongs in the migration wave
- Migration is a rare chance to retire idle capacity, weak access patterns, and mystery spend before they inherit AWS pricing.
- When each wave exits cleaner than it entered, savings fund the next wave of modernisation instead of one-off heroics.
- Executives stay patient when they see tagged unit economics, rehearsal-backed resilience, and a quarterly cadence after go-live.
Migration is your best window to modernise
Core points
- Treating migration as relocation alone misses the chance to decide how systems run, not only where they run.
- Lower cost, faster releases, built-in resilience, and calmer engineers all trace to choices made while traffic is already in motion.
- One South African fintech tightened automated testing inside CI/CD during migration, cutting manual bottlenecks and freeing builders to focus on product bets investors could see.
Migration is essentially about easing workloads, not only moving them.
Right-size and automate before the first wave
Core points
- Audit what you already run: idle resources, undersized databases pretending to be oversized, and environments nobody owns.
- Pair AWS Cost Explorer, Budgets, and Auto Scaling with honest demand curves so finance and engineering read the same chart.
- Automation keeps spend predictable and performance consistent while you still have runway to fix mistakes cheaply.
Skunk tip
- If you can measure it, you can optimise it.
Right-sizing with disciplined automation often cuts compute materially compared with untamed on-demand habits.
Modernise architecture, not only the address
Core points
- Legacy patterns may have got you here, but they will not carry modern scale. Containerise services with AWS ECS or EKS to isolate blast radius and speed deployments.
- Use serverless patterns such as Lambda and EventBridge for bursty work so you pay for execution, not idle capacity.
- Adopt infrastructure as code with CloudFormation or Terraform so every rebuild is repeatable evidence, not tribal knowledge.
Tag everything, model spend, embed resilience
Core points
- Tag workloads by team, environment, and purpose so every rand traces to a business owner, not a shared mystery bucket.
- Model steady versus intermittent load before you buy Reserved Instances or Savings Plans, predictable spending unlocks predictable growth.
- Design multi-region backups, clear RTO and RPO, quarterly failover drills, and POPIA, FSCA, and FIC alignment while architecture is still flexible.
Skunk tip
- Treat failovers like fire drills: if they feel boring, you are doing them right.
You cannot optimise what you cannot see.
Measure after cutover and keep iterating
Core points
- Track deployment frequency, cost per transaction, incident recovery time, and audit cycle length after go-live, not only launch day.
- Continuous monitoring through CloudWatch and observability partners keeps the stack honest once the programme spotlight moves on.
- Quarterly cost and capacity reviews turn migration lessons into a living roadmap instead of a one-off project memory.
Skunk tip
- If you only optimise during the migration project, you will re-open the same gaps next budget cycle.
Burnout is not a migration strategy.







