Of course being "the best" depends on the company. Let's consider someone like DHH from 37 Signals. He created a very popular web framework and a suite of popular products so no doubt that he is a very productive and talented developer. However would he be the best person to choose if you wanted to do complex cryptanalysis or develop a high performance OS kernel?
What if you took someone who was skilled in these things and gave them David's job, would they be "the best" then?
I think it is this confusion that makes interviewers think they must ask complex math questions to interview someone who's day job will be to write code that generates HTML.
There also seems to some confusion that you are only elite if you use the latest and coolest tools, which leads to weird stuff like someone who made a web 2.0 social chat app in nodeJS being considered better than someone who designed and implemented a 6 nines reliability infrastructure system for a bank but who was building on top of legacy Fortran/Java/Oracle.
but yeah quite often it seems like these companies with thousands of developers...could be run with a 20 times smaller team
With that said the issues involved are as such:
1. If you had equity in a company (and sometimes even if you don't) it is not uncommon to sign a non-compete contract as part of the sale that bars you from working for a competitor for about a year. 2. Often, much of the value of the sale for employees is structured as retention payments, i.e. they set up a number of bonuses that are spread out over a few years, and you need to work at the company for that duration to get those bonuses.
but it doesn't matter if people are unaware that they're not the best. software gets built, money is made, and people sort themselves into the type of job they're ready for. especially because ability to build a highly valued company is probably a seperate dimension of "goodness" than coding chops. and a more valued dimension.
That said, if you only WANT for solid players, you usually end up with crappy ones.
You say that you have the best and brightest so that you can say you have the best and brightest.
I ask this honestly...why would the best and brightest want to work for consumer-facing companies with minimal salary and the equivalent of a lottery ticket for cashing out in 4-5 years? Maybe I just don't get the SV hype--I'm from Chicago. I thought we were past the rockstar/ninja stuff. Don't you just need people who can, ya know, "deliver" and "execute your tasks efficiently." Maybe even scale your app to multiple EC2 servers. And maybe if they're really motivated, contribute to your "vision."
I'll admit that my "lifestyle" business plans are basically the same-- a fairly simple B2B CRUD app that hopefully gains traction when I release it. But I would never even think of courting the kind of talent I would expect to be attracted to NASA, SpaceX, <insert green energy startup here>, etc.
What am I missing?