Freelance Terraform consultant

Terraform is the tool I reach for first, and has been across every engagement since 2018. The interesting problem is almost never the syntax — it is what to do with an estate that was built by hand and now has to become code.

Scope

What I take on

Bringing click-ops under control

Importing an existing, hand-built estate into state without a rebuild. This is the messy one, and the one most teams stall on.

Module design

A module library your team can actually use: sensible interfaces, versioned, documented, and not so abstract that reading it is harder than reading the resources.

State strategy

Backends, workspace and environment layout, locking, and blast radius — so a mistake in staging cannot reach into production.

The layer underneath

Ansible or Puppet for configuration management where Terraform stops. Both have been production tools for me, not weekend reading.

Method

How it runs

  1. 01

    Small, reviewable changes

    Infrastructure changes should go through review like any other code, and a plan should be readable by someone who did not write it. If a plan output needs explaining every time, the code is wrong.

  2. 02

    Import before rewrite

    Rebuilding an estate from scratch to "do it properly" is how migrations die. Import what exists, get it green, then improve it under version control.

  3. 03

    Leave a library, not a black box

    The deliverable is modules and documentation your engineers own. If your team cannot extend it after I leave, it was not finished.

Evidence

Where this has been done before

  • Knab Migrated legacy infrastructure to an IaC model with Terraform and PowerShell, making environments consistent and reproducible across a regulated estate.
  • LeasePlan Replaced manual OpenText instance setup with Terraform and Ansible Tower, removing a large slice of repetitive configuration work.
  • Patchman Orchestrated an entire Linode VM estate with Puppet, keeping every node consistent — the same discipline, a different tool.

Fit

Probably worth a conversation if

  • Your infrastructure exists only in the console and in one person's memory.
  • You have Terraform but it has become a tangle nobody wants to run plan against.
  • Environments drift, and nobody is quite sure how staging differs from production.
  • You want IaC set up properly once, by someone who has untangled it before.

Contact

Tell me what is actually broken

The contact details live on the front page. If I am not the right person for this, I will say so.