I'm based in the UK, so I'm not sure how well this can be answered elsewhere.
In my opinion, the best way to find good developers is through recruitment agents. I'm basing this opinion on the fact that if I was looking for a new job then the first place I would go is a recruitment agent. Unless of course I had a specific company in mind that I wanted to work for.
The problem is, recruitment agents charge a lot of money. Anything from 15-25% of starting salary.
As a startup, this is a lot of money. Whilst you can be very strict on your hiring to ensure you only get the best, it's still a lot of money to shell out.
A large and well known company has the benefit of being able to advertise their positions and attract candidates without the need for a recruitment agent. However, this requires already having a name for yourself which a startup just doesn't have.
So my question is, what other options are there to get good developers to apply to work for you when you're a small startup that they will never have heard of!