Executive Summary
A UK EdTech provider running a school management platform across England and Scotland had a half-built Terraform codebase, no environment isolation, and a deployment process that depended on manual server work. Term-time traffic peaks were a manual scramble. Logicata completed the Terraform, introduced Terragrunt for per-account environment isolation, implemented Golden AMI builds, and wired up an Auto Scaling Group with warm pools. Deployments became repeatable, environments became truly separate, and scaling stopped requiring a human in the loop.
Customer Overview
Sector: Education Technology (EdTech)
Location: United Kingdom
The customer operates a web-based school management application used by schools and local authorities across England and Scotland. The platform manages sensitive pupil data, attainment records, assessment scores, and personal information. The combination of regulated data and predictable term-time load patterns made the platform’s operational fragility a growing risk.
The Challenge
The infrastructure was holding the platform back in several distinct ways:
- Incomplete Terraform. Existing IaC covered some services but missed critical pieces: Route 53, WAF, RDS, EC2 sizing. Anything outside the covered set still drifted.
- No environment isolation. Development and production shared configuration. A change in one environment could quietly affect the other.
- Manual deployments. Pushing application code meant manual work on servers. Every release was a fresh source of risk.
- No automated scaling. Term-time peaks (start of year, mid-term assessment cycles) required manual intervention to keep up with demand.
- Loose secrets handling. Configuration and secrets were not consistently managed across environments, mixing concerns and increasing audit exposure.
The Solution
Logicata delivered a complete infrastructure modernisation in five interlocking parts:
1. Terraform review and completion
Reviewed the existing Terraform codebase, then wrote the missing modules: Route 53, EC2 instance sizing, AWS WAF, and RDS. The IaC now covers every service in the architecture.
2. Environment isolation with Terragrunt
Per-account configuration via Terragrunt. Development and production are independent AWS accounts, spun up consistently from the same modules but with isolated state and configuration. Changes can be tried in dev without prod-side blast radius.
3. Automated deployments via pipeline
A CI/CD pipeline triggers infrastructure changes automatically on merge. Manual terraform apply from a laptop is no longer part of the release path.
4. Golden AMI build process
Application code is baked into an AMI by a build pipeline. Secrets are retrieved at boot time from SSM Parameter Store rather than baked in or shipped with the AMI. Each AMI is immutable, versioned, and rollback is just pointing the ASG at the previous one.
5. Auto Scaling Group with warm pool
Instances are pre-warmed in a warm pool, so scaling out during term-time peaks is fast rather than dragging a cold-boot tail. Changes roll out via instance refresh, replacing instances gradually without downtime.
Results
- Complete Terraform codebase covering every AWS service in the architecture
- Proper environment isolation between development and production accounts, eliminating cross-environment drift
- Automated deployment pipeline that takes manual server configuration out of the release path
- Immutable Golden AMI deployments with secrets injected at boot time from SSM Parameter Store
- Auto Scaling with warm pool absorbing term-time demand spikes without manual intervention
- Secrets out of code and into Parameter Store, with consistent handling across environments
AWS Services Used
- Terraform with Terragrunt
- Amazon EC2 (Auto Scaling, Warm Pools, Instance Refresh)
- Amazon RDS
- AWS WAF
- Amazon Route 53
- AWS Systems Manager (Parameter Store)
- AWS CodePipeline
- Amazon VPC
About Logicata
Logicata is an AWS Advanced Partner holding the AWS Cloud Operations Management Competency, validated through an independent third-party audit. Logicata helps organisations build and operate secure, well-governed cloud platforms on AWS, enabling customers to reduce operational risk, meet assurance expectations, and scale with confidence.

















