2 SP3's from OVH would be both cheaper (89*2) and have way, way more bang for the buck than a single weak amazon instance. (E3 1245v2 8 ht cores @ 3.4ghz , 2 x 120GB SSD in soft raid and 32gb memory) If you wanted to run windows on those, you'd need to buy two licenses pushing an extra 50$ a month onto the price. You also wouldn't need to screw around with spawned instances in failover, and you could actually use the capacity of both systems at the same time to massively increase your initial capacity before it becomes necessary to expand that investment again and get more steel.

None of your windows based software will scale well horizontally, especially at the storage layer compared to the competition, and if you're relying on bizspark for the price advantage, you should also mention it expires in 3 years and you then either have to go full in to microsoft licensing and massively increase your software spend, or drop your engineering investment in the past three years and go with something off the MS stack. It sure is a neat trap from microsoft's perspective, but it's a pretty shitty deal for anyone that actually looks at it economically and long term.

On the other hand, if you build your apps around a horizontally scalable storage solution (of which there are about fifty hojillion these days on open source stacks) you have near infinite ability to scale upward by just throwing more boxes at the problem. Visual Studio may be very pretty but for a nice IDE you drop a well behaved git, and everything that goes with it.

You also lock your software engineer options to people that are satisfied working on the MS stack, which whilst acknowledging that anecode is not data and all, in my experience means that you will get poor results.

If you look around and all you see is masses upon masses of startups pursuing fairly similar infrastructure strategies, you should probably think very hard about why everyone else thinks you're wrong before you're certain you're not.

From my perspective the equation looks like this;

Pros;

Visual studio.

MS CLR performs well against python / ruby / php.

In a single server environment, you can probably get away without any sysadmin expertise.

Cons;

Everyone has to use Windows.

Storage layer doesn't scale well horizontally.

Git not so great. (apparently this no longer applies and msysgit works perfectly well now)

CLR may perform well compared to interpreted languages, but not so great if you're willing to go a bit more esoteric or if you're happy with boring old java.

Application server scaling is largely the easiest part of any horizontal scaling stack at any rate, minimising the significance of your competition using even extremely slow interpreted languages.

Licensing fees are infinitely more than the (typically free) competition. When BizSpark expires, even moreso. And you bought yourself a nice solid vendor lockin by using their sandpit in the meantime.

You're stuck with microsoft monoculture and all the associated baggage that implies from a HR and strategy perspective.

Most of the stuff everyone else is using that you might want access to works either not at all or poorly on windows, meaning when you run up against the same problems as your competition, they'll have more ground on you from the get-go. (ansible, redis, practically every NoSQL db in existence, etc etc etc, pick a problem space you need to find a solution in and compare the MS CLR based options to "everything else" and MS rarely comes out on top unless it's dealing with MS proprietary formats or interfaces in some way)