Now that I have some code in Pulumi to stand up networks and clusters in AWS I wanted to look into GCP to see how hard/easy it would be. There are a few differences that threw me for a loop. Overall things are simpler but also different enough from AWS to be confusing.
In GCP, networking is a global resources so it is not scoped to a region like in AWS. I'm not sure if this is better or worse but it's different enough that I think I'm going to emulate the AWS model by creating a network per region and then a single subnet per zone in the region. The subnets are much simpler in GCP because outbound networking just works if a VM has a public IP address whereas in AWS there is a lot more configuration involved.
Subnets belong to networks but there is no relationship between regions and networks other than that subnets must belong to a zone which belong to a region. Overall I think it's simpler but the scoping is different from AWS.