I've been writing software in the last 10+ years, mainly as a consultant/freelancer. Within those years I got some exposure to the world of software developers and had the opportunity to work with more than a dozen different developer teams from 3 different country.
The answer to your question depends on what you mean by best developers, but in general you'll find most of the best developers already working for the best companies for developers.
Those companies already did the research, hired the best developers, gave them interesting and challenging problems to keep them motivated and offered compensation accordingly.
To find places with high density of the best developers find which office locations Google, Twitter, Amazon, etc. hires developers at.
To find individual developers go to places where they hang out, sites like http://stackoverflow.com, http://quora.com, http://github.com. You can also find highly qualified freelancers at http://toptal.com and http://upwork.com. It's also worth visiting local meetups for software developers or events like Startup Weekend and meet the developers face to face (http://meetup.com).
Once you have a pool of potential candidates, put them to a test and get them write a small code/application for you. That way you'll learn about their actual coding skills and will also have a sense on their other skills like communication, problem solving, etc. It's a good idea to get an experienced developer to do a code review on the sample code the candidates wrote, to make sure the code is well organized, efficient and maintainable.
I hope I answered your question, if you have more, I'd be happy to help you with more details.