Why we moved from Amazon Web Services to Google Cloud Platform?
TL;DR: AWS’s awesome, but Google is Googol awesome.
Participate in any AWS re:Invent conference ($1,600 admission) or follow head evangelist Jeff Barr and you’ll fall in love instantly with Amazon Web Services.
100s of new features every year and an all-you-can-eat, elastic, no-ops bouffe of on-demand services. Well, until you get to actually taste the food…
Amazon’s awesome, but Google Cloud is built by developers, for developers, and you see it right away.
Why we moved? App Engine
GAE just works, has auto-scaling, load-balancers and free memcache all built in. Want to connect to Cloud SQL? use the virtual linux socket /cloudsql. Want to write custom logs and see them instantly? Append /var/log/app_engine/custom_logs or simply console.log() and console.error(). Want to profile and debug your application IN PRODUCTION? put breaking points in StackDriver or SSH to the managed instance.
Under the hood you’ll see GAE is 100% docker. Use it to run your 20 microservices with *.appspot.com service discovery or run one mamooth application at scale.
Why we moved? Flexible VMs
Google lets you create custom machine types with any cpu/memory configuration. They let you opt for cheaper, preemptible (a-la spot) instances with a single click and no bidding/auction code whatsoever.
Why we moved? Networking & Bandwidth
Google connects each and every VM to its super-fast, low-latency networking. Amazon requires you to buy expensive cluster networking instances.
Google lets you set up simple Firewall rules. Amazon gives you VPC, security groups, network access control lists and a big, fat headache.
Why we moved? Billing
Google bills by the minute (not hour) and apply AUTOMATIC DISCOUNTS for long-running workloads, with absolutely no reserved pricing nonsense (warning: AWS EC2 pricing page might crash your browser).
Why we moved? Pub/Sub
Want to run a message bus? AWS will make your head spin with SNS, SQS, Kinesis, Kinesis Streams and Kinesis Firehose. GCP has only Pub/Sub which just works and is insanely scalable.
Why we moved? BigData
Google BigQuery is nicely priced by the GB stored and TB queried, has day partitioner built-in, 50% reduction in price for unmodified partitions (so you can keep data for longer) and full SQL support.
Google DataFlow is an amazing framework for consuming and processing data in batch or streams, with windowing, automatic triggering/speculative data and easy to use transformations.
Again, awesomely done and just works!
Why we moved? Users & Permissions
Amazon has one of the most confusing IAM. While it is nice to set up a role to only allows usage for a particular resource from a specific device and times of day, you end up spending most of your time debugging policies.
Google security is more leaned back, assumes all resources are allowed within each trusted “project”.
Moreover, people you invite to projects must be Gmail or Google App users which are secure by default and usually already set up.
To summarize
We moved because we wanted to work on infrastructure that runs YouTube, Gmail and Google Analytics. We moved because Google is fair, much more tech-savvy and launch products that just works.
Your mileage may vary.