I have hired freelancer devs. from the following sources:<p>- HN<p>- Indiehackers<p>- reddit (/r/forhire)<p>- upwork/elance<p>I learned a lot of lessons the hard way. No matter which platform you use, some things to keep in mind:<p>0. Do a good technical interview upfront and if needed, pay them for that time. Unless you are hiring a well known superstar freelancer, odds are that you have to really vet their knowledge and experience. Of course, I am assuming that you are a developer hiring another developer. If you are not technical, then you have a serious challenge in front of you and you ideally want someone technical to find that freelance developer for you if possible.<p>1. No matter how good they seem, ask for 1-2 references and check them. If no reference, it is a huge risk.<p>2. Be very very specific in your requirements. Don't be loose. The more specific you are, the better your chances of succeeding with the freelancer you hire. Most freelancers are not really interested in your business or helping you improve your business. That is the fact. They just want to get paid to write some code for you and hopefully do a good job at that but that is it.<p>3. Keep expectations low. Until they show you otherwise. To be very honest, I have not found a freelance developer yet whom I loved. Some have been terrible while most have been ok. They got it done but you know that they could have done a little bit better (in terms of design/quality)<p>4. Did I say don't be loose with requirements. If you hire a pay as you go type freelancer on an hourly rate, make sure you have already worked with them before and you can trust their delivery. If not, you will end up losing shit ton of money and probably piss off the freelancer as well. Expectations need to be clear.<p>5. Treat them with respect but demand accountability. When hiring, look for signs of how they respond to you already even before getting your business.<p>6. Make sure you are not talking to a middleman. A lot of agencies advertise as freelance developers but when you contact them, you will end up talking to a project manager with high margins. Make sure you talk to the developer who will actually be writing your code.<p>7. Setup milestone based payments. But make sure milestones are agreed upon upfront. Again, the looser your requirements, the more you will suffer with freelancers.<p>8. Setup a contract and SOW that they should deliver against.<p>Most importantly, you do get what you pay for but it doesn't mean that a more expensive freelancer will do a better job necessarily.