I'm looking for a developer who can develop for mobile, iOS, I found some on odesk that look impressive and I would like to hire them. Still, I'm not a developer and I'm trying to avoid dealing with someone who isn't as good. Is there a test/s that's recommended I can ask from a developer to see how good they are, or any questions that might help me know if they're good?
You've received good advice. I'd just add one thing. We recently interviewed dozens of developers. After narrowing it down to a handful of individuals that had personalities and resumes we liked, we paid a developer friend of ours a few hundred bucks to interview the developers and thoroughly vet them from a technical standpoint. It was well worth the money to have someone more technically skilled than us contribute to our due diligence on the candidates.
Obviously checking their example work is important, but in addition I like to ask them how they built the app they're showing as an example. If they can answer confidently and clearly then they probably did build it.
Great developers are concise and logical. Bad developers are disorganized and illogical.
You can't really tell a good developer from Kait talking to them though. I would recommend breaking the project down into 5-10 "sprints" where they have something to show you at each step. Ask them to set the time frame for each sprint and if they meet each sprint deadline on time and have the majority of the work to show at each milestone point then you're good to go.
Test whatever you can each step of the way so that you can get what you need functionally.
For me a good developer is someone that will deliver a mobile app that achieves your goals. That means :
- he can help you to define/refine your goals with mookups, iterative and agile developments, you should take a little time to understand what your role as "product owner" is (http://www.romanpichler.com/blog/one-page-product-owner/)
- he will deliver the mobile app on the app store : he has already done that, he is aware of what is possible or not according to Apple's rules, ask him to show you working examples of available apps, did he deploy on all iOS versions or on iOS7 only, which model of iPhone/iPad does he have for his tests ....
- he can give you some advices if you need to deliver your app on another mobile platform (Android at least, WindowsPhone) because Apple does not catch all the market, if you really need a native app or if you can deal with a web app.
You can also book a pair programmer to review his code during the iterations, check the QA (quality assurance) and test the app as a user, have a look at www.airpair.com.
Don't hesitate to have a call with an expert on Clarity if you need help.
While definitions of 'good developer' do vary, the ultimate proof is delivery of "good software" (possibly within time or budget constraints). Figuring that out without working with someone is hard. Most technology companies put a lot of work into that and still make mistakes from time to time, hiring someone who ends up not living up to their recruiting evaluation.
Even if you could accurately measure 'good developer', someone who meets that definition might not be available, and deciding if anyone who is available is 'good enough' can also be tricky.
That said, I think the foundations of the solution have already been posted here, so I'll summarize some of that and add to it:
- Accept that it's hard, and that you may make mistakes.
- Use any connections you have to get someone technical involved with the selection if you can.
- For this kind of work, also make sure they can explain software development and its challenges to you clearly -- you're going to need someone who can do that with you about your software.
- Choose an iterative process for software delivery so that you can see the progress as it happens and evaluate success.
- Make sure that if you're not happy, you can move on. Be prepared to do so.