What are the benefits/cons of each?
My go-to platform is AWS normally.
I say normally because if I’m dealing with HIPAA compliance and that kind of stuff, I might instead push you toward Azure. But that’s because Microsoft has intentionally made it easy to build in that direction on Azure.
But for more general stuff, I go with AWS. It’s the most flexible. Let’s say for example you have a device you want to talk to IoT Core in AWS. You then want to use that to run lambdas, to save it to a time-series database, to save it to S3 or something, it’s very easy to pipe all that through in kind of an ad hoc way for your application in AWS.
Azure I haven’t done as much with lately, honestly. Their IoT offering has been in flux for a couple of years. They launched, i think it’s IoT Hub - their equivalent of IoT Core in AWS. They also have IoT Central, which is some kind of weird codeless pick-something-off-the-shelf and you can use it kind of thing. IoT Central is built on top of IoT Hub. It’s kind of weird. They try to prescribe the right way of to do things and they’ve built like that.
And then Google Cloud Platform is the other. I wouldn’t use that one. Google’s got to figure out what they want that to be.