From my mostly uninformed POV, a company can do whatever they want with respect to this and be on good ground, making it an arbitrary decision with little basis in actual objectivity.
Each case is different and the details drive the decision.
Longer version: Not sure how Amazon deliveries by UPS are in the US but in the U.K. there are carriers which offered far better delivery service than what is known as Amazon Logistics here in the U.K. Once Amazon started using Amazon Logistics, the level of service dropped significantly. False deivery attempts were common and Prime Next Day were not happening next day 3 out of 5 times. I cancelled my Prime membership.
After about a couple of years I have resubscribed to Prime since it is now much better value AND Amazon Logistics have noticably improved. Next day and even Same day deliveries are indeed happening.
They didn't need to setup Amazon Logistics and suffer poor service quality. There were near perfect couriers (for e.g. DPD they even offer tracking your courier driver on a map in near real time).
This is vague.
Running on the cloud is always more expensive than running your own infrastructure past a certain size and always provides less predictable performance.
It's actually about whether or not it would cost more, over the long term, for a company to develop such capabilities themselves, or to outsource it.
Generally, due to economies of scale, a big, established provider will be able to provide such a service much cheaper than it would cost you to run an equivalent service.
However, it depends on how much that provider is charging you, on top of their cost of sales. It's pretty basic in that if it costs more to do it yourself, it's easier to let someone else do it. Especially when you take into account the considerable R&D costs that it would take to provide an equivalent service. Google's services would, I'm sure, be highly developed. This statement says as much, in that it claims Google has services offered by no other company.
So no, it's not arbitrary.
I would simply say "it depends". For companies with specific use cases, e.g. Dropbox, it makes A LOT of sense to build at least 60-70% private, and the rest on AWS or GCP. Snapchat looks like a special case to me.
I always found this issue of "focus" a bit strange. Two billion can buy a lot of focus. For example, say there was a separate company smaller than Google that snap outsourced their infrastructure to, allowing them to focus, then they bought that company - it comes out to the same.
The technical capabilities is a different story.
You know that Snap can hire more than 3 people, right? They can have people working on the infrastructure at the same time that someone else works on "the product" they want to build. That's what happened at Google, and as a side effect, they now have a cloud platform they can rent out.
There are some benefits to using cloud services in some cases. It's rare that 100% cloud is a wise deployment move, especially for companies that operate at Snap-scale.
Also, by buying from Google, they hedge against lower than expected growth too. If growth doesn't meet expectations, while they're still obligated to spend the $2B, they can re-sell the services for likely close to cost, given they'll be getting a discount.
So, if you set scope on expectations and dedicate time and resources, it's definitely possible. Reasonable? Probably not.
Everything at Google is an internal Google secret made by Google for Google. ALL the software and ALL the hardware that's running it.
Services rely on lower-level services. If you want to copy the high level service yourself and executes it at the same level Google does, you'd need to have everything it depends on. Too bad for you, each piece is a multi billion dollar projects itself, with its own dependencies...
Let's imagine for a minute that there was a service that is somewhat standalone-ish. You may consider poaching the handful of people who can make it, for $1M a head. But that won't work well because money is not everything and you can't help it. Whenever there are ONLY 50 people in the world who can deliver what you need and you need almost all of them, you're fucked.
In short, the castle is out of reach, even the building bricks are out of reach ;)
They're so well situated, with a years worth of technology and tools, so it's really hard for a new comer to compete.
They are reporting ~4B run rate for all cloud but that includes SaaS, GCP run rate may be < 1B (but it's hard to know for sure).
edit: I should point out that this doesn't account for ramp-up. It would obviously take awhile before things would be to a point where it would be even comparable.
Would you consider Oracle's cloud endeavor a fair test of how able a company is to reproduce GCP's offering with a fistful of money?
Keep in mind that Google's revenue in 2015 was $75 billion. Their hardware and software know-how is fundamental to their ability to make this kind of revenue, so you better believe they're investing more than a measly $400M per year (Snap's $2 billion over 5 years) back into their hardware. This Snap commitment is a drop in their revenue ocean, at 0.5%.
From a non-fiscal perspective, there's a lot of other great reasons to think so. For one, they've been building custom hardware for a decade at least to support the needs of running at the scale they do. Worth checking out this paper [1] and this video [2] if you're interested in some of what they've been doing purely on the networking side. In mid-2015 their newest data centers were pushing 1 petabit per second of cross-sectional bandwidth. [3] That's mind-blowing capacity.
So their internal data center networking is at or near top of class. In addition to this, they've also invested heavily in inter-DC and backbone capacity [4. Again, this is something that you presumably benefit from when, say, distributing your content across the world for faster access.
In addition to that, you get access to all their class-leading scheduling software and state management software that they've developed, refined, and redeveloped over the last 15 years. They know how to take a pool of compute and storage and turn it into solid distributed systems like only a few organizations do. I'm sure they get a good amount of advising from Google's experts somewhere in that $2B, not to mention services like BigTable, Kubernetes, etc. that you can find on their growing products page [5].
So though I can't back my prediction up with solid data, since I'm not a Google exec, I think it's pretty obvious that even $2B is not going to get you anywhere close to Google's existing infrastructure. Definitely not in 5 years.
[1] http://conferences.sigcomm.org/sigcomm/2015/pdf/papers/p183....
[2] https://www.youtube.com/watch?v=n4gOZrUwWmc
[3] http://www.datacenterknowledge.com/archives/2015/06/18/custo...
[4] http://www.telegraph.co.uk/technology/2016/06/30/google-laun...
Neither have any basis in reality.
First, the open source world is a pile of crap that doesn't work and doesn't stick together. It's not remotely comparable to any of the offering from AWS or Google, let alone their combination of offerings put together.
Second, they definitely use EVERY piece of software and hardware. Just like anyone who has over 100m daily users.
I imagine they had a very strong bargaining position willing to commit this much, for this long. Even if Snapchat wasn't a valuable brand for Google to brag about, this amounts to ~10% of the yearly earnings [1] of Google's cloud business (SaaS and IaaS, of which I suspect SaaS like Apps for Work is the lion's share)
I'm sure they're getting a good deal, and can focus on features and getting their platform profitable, as you said.
1. "..at that pace, Google’s cloud could generate $4.1 billion in revenue in 2016" http://www.networkworld.com/article/3029164/cloud-computing/...