1) Programmer developer must have CV or review of past works (some programmer description)
2) Programmer must have at least several simmilary projects as you want to get from him.
3) At start, you must have excellent communication. Good programmers know to send several past works samples at begining.
4) If you post your project to some freelancer website (getafreelancer, elance…) good programmer developer and excellent freelancer will answer on your post trying to solve your problem. The worst are freelancers which send copy/paste text for each post at freelancer website.