This is decidedly not true. While I wouldn't be so vain as to call myself the top 1% of developers, I've gotten job offers from most major software companies, but one of my criteria for where I accept a job is "do you have fewer than 50 people?"
I want to write code all day, and I want to work on interesting and very hard problems. While this exists at large companies, there are very few jobs at top tier small companies where this doesn't exist.