In a previous job we used Terraform pretty heavily. I never got good at it, because it felt confusing, dangerous, and unnecessarily complicated for our use. More than once we saw that Terraform wanted to delete critical, stateful resources.

I get that the state file is probably some form of optimization, but it seems like a fairly broken concept. A friend of mine still use Terraform daily, and it's probably weekly he encounters Terraform wanting to do stupid shit.

Honestly if I never have to use Terraform ever again, I'd be pretty happy.

ive only used cloudformation, but things like deletion protection, and the hug of death are quite nice to have for making things feel safer.

at least with my organization of a separate stack for {network, data, and compute}

cloudformation would refuse to just delete the data base until you first tore down the api that uses it, and while that would still make an outage, you dont lose data before knowing something is wrong.