No, the answer to buy vs. build is always to buy if you can -- building is a lot like buying from a startup, which one wouldn't do, only you own the startup and you won't be selling its products. You'll spend a few years looking for a product that exists, has a track record, and can be integrated into your environment with not that much effort. And buzzwords -- the product has to have those in its marketing, because you too have to sell it: internally. Oh, and it has to not be too expensive. I've seen godsends get adopted then dropped and replaced with a hodge-podge of in-house + cloud solutions just because the godsends turned out to cost way too much as deployed. Meanwhile the companies that would exist and have such products for you don't exist because no one wants to buy from startups (because probably fly-by-night), but also the bigger players won't build niche products either. Mostly you'll make do with whatever you have already in place, no matter the suckage. Then some day there will be an open source version of the product you wanted, and you'll still wait a year or three before you decide to use it, and you'll have to put a decent bit of effort into integration and maybe even participation in the upstream community.
This stuff ain't easy. Anything that is infrastructure is just hard to monetize. There's a tragedy of the commons sort of thing going on.
Capital-intensive infrastructure (i.e., tied to hardware) is easier: you up-charge on the HW. Think storage, where you can charge a pretty penny for chassis and drives (SSDs, whatever) and backup solutions, but the real hard and expensive part is in the software (it'd better not fail). It's like paying very little for a printer but being locked into unnaturally expensive ink, except backwards.
Of course, some places do end up doing all the in-house building because they are too dynamic to do anything else and they can't afford to wait. We call these places FAANGs (or is it MAANAs?).
Thank you - I was getting worried by all the "the real world is a tough place" comments - this brings it firmly back to the real world is populated by fools who don't understand it.
What happens is that when management gets burned by one of startups, big vendors, or internal dev teams, the response tends to be "ok, we're not doing that again!".
It's like all the silly legal disclaimers you see on... docs, email footers, etc. -- these all represent ways in which some lawyer's customers got burned once. You can't win this game. There's no real reason to think that because you got burned by option A once you always will, especially when you can get burned with all options. But we humans don't work that way. Traumatic experiences tend produce lasting negative responses.
There is just no substitute for understanding the technologies and the people involved. The problem with vendors is that they keep you from really knowing what's going on inside them. One problem with internal dev teams is that they can fall apart.
It's all just hard, and management just has to be very good.
No, the answer to buy vs. build is always to buy if you can -- building is a lot like buying from a startup, which one wouldn't do, only you own the startup and you won't be selling its products. You'll spend a few years looking for a product that exists, has a track record, and can be integrated into your environment with not that much effort. And buzzwords -- the product has to have those in its marketing, because you too have to sell it: internally. Oh, and it has to not be too expensive. I've seen godsends get adopted then dropped and replaced with a hodge-podge of in-house + cloud solutions just because the godsends turned out to cost way too much as deployed. Meanwhile the companies that would exist and have such products for you don't exist because no one wants to buy from startups (because probably fly-by-night), but also the bigger players won't build niche products either. Mostly you'll make do with whatever you have already in place, no matter the suckage. Then some day there will be an open source version of the product you wanted, and you'll still wait a year or three before you decide to use it, and you'll have to put a decent bit of effort into integration and maybe even participation in the upstream community.
This stuff ain't easy. Anything that is infrastructure is just hard to monetize. There's a tragedy of the commons sort of thing going on.
Capital-intensive infrastructure (i.e., tied to hardware) is easier: you up-charge on the HW. Think storage, where you can charge a pretty penny for chassis and drives (SSDs, whatever) and backup solutions, but the real hard and expensive part is in the software (it'd better not fail). It's like paying very little for a printer but being locked into unnaturally expensive ink, except backwards.
Of course, some places do end up doing all the in-house building because they are too dynamic to do anything else and they can't afford to wait. We call these places FAANGs (or is it MAANAs?).