terraform · IaC · UK · remote

Terraform Consultant UK

I help engineering teams design clean Infrastructure as Code, untangle messy Terraform setups, and automate plan and apply through CI/CD — so the team can ship infrastructure with confidence.

the problem

Common Terraform problems

Terraform state is a mess

Multiple state files, manual state manipulation, and a general fear of running terraform apply.

Nobody knows what Terraform manages

Drift between code and production is common, and nobody's sure if the state reflects reality.

Modules are copy-paste nightmares

The same resource repeated with minor variations across environments — no reuse, no consistency.

Changes are applied locally and manually

No CI pipeline for Terraform. Changes happen from someone's laptop with no plan review or approval.

New environments take days

Spinning up a staging or test environment requires manual steps and inconsistent results.

Terraform is growing beyond the team's comfort

More resources, more complexity — nobody's confident enough to refactor or restructure.

the output

What I deliver

  • Module architecture — reusable modules with sensible variable design and no duplication
  • Remote state configuration with locking and workspace or folder-per-environment strategy
  • CI/CD for Terraform — automated plan on PR, apply on merge, with approval gates
  • Drift detection — scheduled plans surfacing changes made outside Terraform
  • Variable and secrets management — tfvars strategy, Vault integration, or SSM Parameter Store
  • Tagging and resource naming conventions applied consistently across all modules
  • Documentation and runbooks — how the IaC is structured and how to extend it
  • Code review and refactoring of existing Terraform that has grown organically

tooling

Tools and providers

My own homelab infrastructure — 6 VMs on Proxmox, all DNS, all networking — is provisioned entirely with Terraform. See the homelab architecture.

TerraformTerragruntAWSProxmoxAnsibleGitLab CIGitHub ActionsS3 backendVaultSSM Parameter Store

engagement models

Typical engagements

IaC Audit

1–2 days

Review your existing Terraform codebase. Written report with risks, improvements, and a prioritised action list.

Fixed scopefrom £950

Module Refactor

1–3 weeks

Restructure existing Terraform incrementally or from scratch. Clean modules, sensible abstractions, proper state.

Time & materialsfrom £650 / day

CI/CD Pipeline for Terraform

3–5 days

Automated plan on pull request, apply on merge, approval gates, and Slack/notification integration.

Time & materialsfrom £650 / day

Advisory Retainer

Ongoing

Ongoing support as you build out IaC — code reviews, architecture decisions, and regular syncs.

Retainerfrom £1,250 / month

credibility

Why work with me

Terraform Certified

HashiCorp Certified: Terraform Associate

AWS Certified

Solutions Architect – Associate

14+ years

Cloud and infrastructure engineering

Terraform in production, daily

My homelab uses Terraform with the Proxmox provider to provision all VMs, combined with cloud-init for first-boot configuration and Ansible for Day-2 setup. Every change goes through GitLab CI — plan on merge request, apply on merge to main. Not a demo project.

See the homelab architecture →

questions

Frequently asked questions

Do you work with Terragrunt?

Yes. Terragrunt is a good fit for large multi-account or multi-region setups where Terraform alone gets repetitive. I can advise on whether it adds value for your scale.

Can you help with Terraform that's already in a bad state?

Yes — state recovery and incremental refactoring is a common starting point. We assess what exists, document the drift, and restructure without breaking production.

Do you work with providers beyond AWS?

Yes. I use the Proxmox provider extensively in my own infrastructure, and I've worked with common providers (Cloudflare, GitHub, Vault). AWS is the deepest area of expertise.

Is Terraform the right tool for us?

Not always. For very simple setups, Terraform can be overkill. For complex multi-environment or multi-account infrastructure, it's hard to beat. I'm happy to assess your situation and be honest about the trade-offs.

How do you handle secrets in Terraform?

Secrets should never live in state or tfvars committed to Git. Depending on your stack, I'll recommend AWS SSM Parameter Store, Secrets Manager, HashiCorp Vault, or environment variable injection from CI.

get in touch

Get your Terraform in order

Whether you need a full IaC audit or a focused refactor, let's start with a conversation about your infrastructure.