3 ms·
As another ex-Amazon... there's a whole bunch of NIH going on there too. The way I saw it, it tended to be split three ways: 1) NIH. Almost always the proble
by Twirrim 6y ago
As another ex-Amazon... there's a whole bunch of NIH going on there too. The way I saw it, it tended to be split three ways:
1) NIH. Almost always the problems that need solved are interesting, and engineers are naturally chomping at the bit to solve them. Added bonus you can potentially make a name for yourself. This happens way more than it should, in cases that don't meet the other two ways I saw. Solving problems that have already been solved very effectively and efficiently, in a mature low friction fashion.
2) It doesn't scale to needs. A lot of software just doesn't scale to the requirements of the platform. It's hard to understate just how much traffic and work a lot of Amazon infrastructure has to handle. Most software doesn't scale that well because it's not run in so big an environment. We're using some well known commercial software at my current employers (because it works, has a good reputation, and did everything we need), that is experiencing major scaling issues because we're literally orders of magnitude larger than any of their other customers. We're seeing stuff they've never had to deal with before. We're not even close to Amazon's scale for this particular type of software.
3) Need to control the entire software stack, have the ability to drastically modify it to meet the changing demands placed on it. A lot of public software is written to meet one need, and it rarely changes that drastically over time. That's not what the consumers want, even though needs change over time. Change your software too much and you'll lose your existing users that fundamentally need what the software is providing. You can see the boom and fall of it all with so many projects. Take a look at what's happened with Chef and Puppet, for a quick off-the-top-of-my-head example.
- srtjstjsj 6y ago4) the most important reason: open source stuff isn't built to integrate with the decades old custom stack cruft
- ex_amazon_sde 6y ago> there's a whole bunch of NIH going on there too That's why I wrote "usually".