> Large scale distributed systems aren't that simple.
It is not simple but it also doesn't have to be 1000 employee-type of complexity.
As a counter-example I'd point to WhatsApp was handling 1B users with 50 employees. That includes custom apps for fringe phones used in 3rd world countries. It included media sharing, it including managing and ops.
I know they are not Twitter but still 50 vs 1000 is a huge difference.
They've traditionally credited Erlang and FreeBSD as one the techologies that was responsible for their success. Not sure if Facebook will strong-arm them into switching to whatever Facebook is using.
One can then ask, well, why don't companies look at that and learn and do the same? And I think the answer is once they headed in one particular direction with their choices, they are more susceptable to the sunk cost fallacy. Coming in one morning and telling everyone, screw it, we picked the wrong direction 2 years ago. We'll lay off 50% of the people and re-write the whole thing in Swift using this other stack. We'll cut half the products and work on new ones. Etc. That is almost impossible to do. So they are sort of bound to heading in the direction they've been heading, even if individual people will all see it is probably the wrong direction.