Hacker News new | comments | ask | show | jobs | submit login
Ask HN: How do you find good developers on oDesk?
61 points by basdevries on June 21, 2014 | hide | past | web | favorite | 63 comments
What are you looking for if you are searching for a developer on oDesk or any other freelancing site? Do you post a job or do you go look for developers yourself and ask them to join you? How do you determine if they're capable to work in a team? etc.

I'm curious because many startups hire remotely at first, and there's still a lot of problems with that atm.

Good question. I have an associate of mine who is building a fairly large web based system with oDesk developers. He told me the other day he spent $100k "figuring it out" and has burned through some 100+ people. He now has a core of about 12 that contribute and a small core of about 4 people who are daily parts of his team.

His insight is that you want a process to bring people in and shoot them quickly if they don't work out. It's sort of sink-or-swim but with a rubber ducky that has a leak in it. If they figure out the system from documentation and start contributing good stuff the core team will start working more with them. If they're slow to respond, don't submit stuff that looks useful they just whack them and move on.

He has some pretty amazing people on his team, that said he's dealing with the typical timezone and remote worker synchronization problem that all these teams have. Recent conversations have turned towards building a core team that is "in an office together" somewhere to get core work moving quickly and smoothly with stuff at the edges being worked on oDesk team members.

I personally haven't done any oDesk projects yet but I imagine "Hire carefully fire quickly" is going to be the best advice I can give.

To be frank, if he spent $100k figuring it out and still hasn't got it right, I hope you are ignoring everything he said.

That he's wasted so much money and now suddenly thinks everyone should be in the same office is a sign he's probably a terrible project manager. Probably.

No he has a great working product that would have cost him 10x to build but certainly much of the $100k was used learning how to get the right team assembled and work with them to get them productive.

He is looking to get a really small core team in a small face-to-face space to accelerate their work. It's about speeding up iteration cycles and anyone who has worked on distributed teams know the challenges of not being in the same room with each other. That said I've had success with distributed teams but I've yet to see one loop through cycles as quickly as one that is in the same physical space on a regular basis. I'm not saying it can't be done, just in my time and experiences I've not seen a distributed team out pace a team that is in physical locality to each other on a regular basis.

It's basically this.

1. Post smallish fixed price jobs and say more is at stake if they do well.

2. Hire several people for the jobs, if there are good candidates.

3. Stick to your typical screening methods. For me, I like checking out their stackoverflow and github.

4. Communicate well, ask for their honest feedback, and don't tolerate BS. If their work in a small fixed price job is good but not great, it will likely only get worse.

5. It's better to have a go-to team of specialists for many things. Ie Don't have a general PHP hacker help design your database. Foundational and architectural stuff is worth paying more for a specialist.

End of day... Small fixed price jobs limit your losses and failures in a major way.

Once you like someone, get a contract going. Rinse and repeat if you're growing and profiting.

> Post smallish fixed price jobs and say more is at stake if they do well.

This is a giant red flag for me as a freelancer. It immediately puts me off as a sign of this guy is being defensive for some reason.

"I know we're paying you lower than your usual rate, but if you do this right, there's another project down the line."

No thank you.

Why are they paying below your normal rate? It is a fixed price contract, you are taking on all the risk, so if anything the rate should be higher. I've hired on Elance this way (i.e., audition project) and based on the hours worked, I paid 4X their posted rate. Happy to do it, because I found someone who worked very fast!

Don't forget that the client might not know what the budget should be, and on most sites, you can simply bid above their max and explain in the proposal why their budget was too low. Likely you will stand out if you brought up something they forgot to include or didn't consider.

Question: what if they said there will be an audition project at your specified rate? Not fixed bid, but you would be expected to provide an estimate. That is how I am doing it for my next project and would love to hear feedback.

I don't think MicroBerto was saying pay a low rate just small fixed price blocks of work. If I was doing it I would probably slightly overpay to keep quality interested but not so high the appropriate rate for the main projects is offensively lower.

I think what Microberto is suggesting is to post a smaller unit of work and evaluate the results before committing to a freelancer for the long term. So maybe you put out a 15-30 hour job for $500-1000 to see if that person will work out. If it works out well, move on to the longer engagement. If it goes poorly then you're only out of $1000 and a week of time.

I know that's what he's saying - that's what I find kind of off putting.


Besides, ODesk uses a BIDDING system. They tell you the average bid price. Bid whatever rate you want.

If you are above the average bid rate (which sounds likely) and can sell the client on why they should pay you more, then put it in your cover letter. It's the exact thing that happened with my last devs.

You've seen the bad code out there. We have to be defensive if we want to keep our money around long enough to see the project to fruition. But I never said to underpay. I said to not commit to bigger things until you know what you're getting.

And at what point in my post did I ever say to underpay the developer? I didn't.

Don't put words in my post/mouth. This is garbage.

Absolutely agree. This is one of the instant alarm-bell triggers for me when reading a posting.

I'm both freelancer and I had a chance to interview a few candidates found on oDesk. Here are my thoughts:

1. Reviews by clients are not worth much. I've had a situation where my client asked me to fix the project after previous developer, who's code was horrible, but at that time my client didn't realize it, so they gave him 5 stars.

2. Pay attention to the language candidates use - very often their summary/portfolio is written in correct English, but during conversation they make lots of very basic mistakes. I'm not a native English speaker, I also make mistakes, but quite often these people just can't communicate in English, and this , sooner or later, will become a problem for you.

3. It's better to invite developers than to just post an offer - I've seen offers starting with "ONLY DEVELOPERS BASED IN US" to which hundreds of people from Asia applied. People don't even read descriptions, they just apply everywhere.

4. Developers' summaries are overrated - I've interviewed people with "more than 5 years of experience in web development" etc. whose code was more like junior developer's.

5. Having said that - ask people for samples of their work. The best is some OS project, because then you know it's their code, but actually few people write OS. Anyway, reading the code, even just 2-3 simple files, helped me to reject a few developers who made good impression during the talk.

TL;DR: chat to see if they can use English, read their code, be sceptical about what they and their clients wrote about them.

You don't. Or if you do, you're lucky and/or you wait in line for them.

Good developers don't use oDesk to find freelance work. They have a good enough reputation to find work through their professional network. oDesk is a race to the bottom where you compete on price instead of skills. Its a market for lemons (http://en.wikipedia.org/wiki/The_Market_for_Lemons)

I'm a contractor and I wouldn't touch oDesk with a 10 ft pole.

This is entirely wrong. You are comparing US and Western European high-cost market with the lower cost markets of Eastern Europe, Asia and South America. Yes, a contractor in a high-cost market, offering his services on oDesk won't be top caliber, because he should be able to get local contracts with much higher rates.

But contractors in lower cost countries are just as capable, while charging one third to one fifth of Western European / US prices. While this sounds low, the living cost, tax rates and average salaries are such, that oDesk freelancing becomes very appealing for a person in such a location.

A specific example: A frontend dev salary in Eastern Europe (full-time position) of 3.000 USD a month is quite decent. On oDesk, he can charge 25 to 30 USD pr. Hour. If he is good, he will end up with full allocation, and thus a salary of 4000 to 5400 USD pr. Month given a 160 hour work month. Additionally, he also has the personal benefit of working 100% from home, at hours which he usually has some control over.

Being unable to find good people to work with on oDesk and similar sites, is due to lack of experience in outsourcing, not because it is a market for lemons.

1) Freelance $30/hour is absolutely not equivalent to a salary of 5400.

2) Assuming 100% utilization is completely unrealistic. Does this frontend dev ever want to take vacation or take a sick day? Does the time that they spend searching for new clients not count towards utilization? Etc..

3) Every actually good developer with excellent English skills I've ever run across from lower cost markets like Eastern Europe, Asia and South America all charge full high cost market rates.

1) Sure, when talking freelancers / contractors you of course have to account for a ~20% deduction for sickness and vacation. So the base wage increase is often around 100% but compared to a full-time position, it is closer to a 50% increase.

2) It is only unrealistic for freelancers doing many small jobs. Not for contractors with ongoing 40+ hour contracts, of which there is a lot on oDesk. Maybe the confusion is semantics: When I talk of 100% allocation, I mean 160 hours of available work. Over a year, you'd remove 10-20% for vacation and illness, like mentioned above.

Check the work history of the higher rated contractors on oDesk if in doubt about this. There are many doing much more than 160 hours on average.

3) This is certainly not the norm :-) Not a lot of companies are interested in hiring a person a thousand miles away for the same amount of the guy next door. Especially not the type of companies who can afford developers contracting at high-cost market rates i.e. 100-300 USD pr. Hour. Again, if we are nitpicking, there are of course exceptions like especially well known developers or developers who are proven and known to a specific client. Then it's an entirely different story.

1 and 2) Not just that. In most countries, a freelance wage and salaried wage are different. For a freelance wage, you're paying for things out of pocket (taxes, benefits, etc) that your employer is required to pay for instead if you were salaried. You can't just do the math of $30/h * 40 hours * 50 weeks/year = your salary. It overlooks so much of the overhead costs of freelancing.

3) I'll readily admit that this point was anecdotal from me. But as someone who has worked with many both "good" and "bad" offshore ESL freelance developers, I can definitively say that the good ones asked for a competitive wage while the bad ones were asking for pennies on the dollar. It was really self-segmenting in this way.

$62,000 per year ($30 USD/hr) is actually an average salary (and an excellent entry-level salary) in many places in the US for the kinds of development people who use oDesk and elance are looking for. Hell, on one of these threads some time ago somebody in the south bay area was gushing with pride about how he pays his developers "well" at around $90k/yr ($45 USD).

That aside, given the ease of access to information the internet age has brought, I think it's more likely that hourly rates and skill aren't as coupled to geography as you suggest. A skilled developer even in Eastern Europe, if he is at all aware of his own skill, is likely to charge as much as any western developer unless he's hopelessly ignorant or just plain desperate. The rest are as average or below-average as their rate indicates.

Completely disagree. I've been freelancing on oDesk exclusively for 2 years now and I make a great living. Don't be stupid and set your rates to $10/hr, you're obviously going to compete with the bottom of the barrel and work with shady clients.

Up your rates and suddenly shady guys don't contact you, and good clients recognise talent and you get a good paying job.

Let me put it like this. I did an oDesk rate analysis. 5 star developers in my niche charge SIGNIFICANTLY less than I am right now, and I'm considering raising rates.

You might be making a fine living. But I suspect that if you're a good developer on oDesk, you'd be making a lot more off of oDesk.

Let's put it this way. Working in my country, Bolivia - I used to make $X/month.

Switching to oDesk and raising my rates immediately helped me land $X+400%/month. Immediately. It was just astounding to me. I'm sure I could earn more on other websites, and as a matter of fact I'm currently attempting to join TopTal.com

I've heard great things about that site and the way they operate.

You should raise your rates and get off of oDesk. Though it sounds like that's what you're about to do, with TopTal. If you're a reasonably experienced Rails developer with strong English skills and you're not charging at least 100USD/hour, you're underpaid.

I'd like to give freelancing a shot at some point. How would you build a reputation network coming from a corporate background?

I don't know what kind of freelancing you plan to do, but for me the method of moving to freelancing that worked (after two failed attempts) was connecting with veteran freelancers as quickly as possible. I became the technical resource for a creative agency by just calling them up and asking them if they needed technical help. From there it was a matter of being responsive to their communications, helping them look smart in front of their clients by feeding them ideas, and giving them flexibility--trying not to say "no" too often, even after seeing their pie-in-the-sky Photoshop mockups.

Since then, I've expanded my opportunities by reaching out to my competition to build friendships and explore ways of working together.

I found my (limited) corporate background a bonus because I was used to working on a relatively productive team (edit: so I could basically pull a team of freelancers together and bid on a large project as a group of independents), and a liability because I tended to think "I could always go back to the corporate world" instead of taking every opportunity to figure out how I might make self-employment work. It wasn't until I hired a business coach (a former SV corporate guy himself) that I started to learn how to make the whole thing psychologically/emotionally sustainable. There are opportunities to write your own failure narrative around every corner. :-)

Hey, I am starting myself and this is one of the best posts I ever saw on the subject, can I be your friend? ( from my point of view, you are a successful freelancer! )

Ha. :-) Yeah, no problem. porkfriedriceplease [de] yahoo

I'm in the corporate environment myself and definitely interested in seeing what I can do on the side. Could I get in touch with you for some insights?

Sure thing. porkfriedriceplease [symbol] yahoo

do you blog? where?

marccarson.com/articles (occasional freelancer-oriented content)

I see a lot of "luck" in the comments. I have 6 years of outsourcing experience and I agree it's part luck, but there are great ways to spot out great talent on outsourcing platforms such as oDesk. I usually set aside a few thousand (not $100k like kator mentioned, but around $2-10k), and post a project on all three of the major platforms; oDesk, Freelancer, and Elance. This project will only be a small portion of the whole project to gauge how the developer works and if that is in line of how I work, can be different for you. I found more success on oDesk than the other two, but I wouldn't limit to just one source for talent.

Things I avoid:

- Groups where I have to talk to a Project Manager. Especially where the Project Manager is the translator to the team because this can cause a lot of misinterpretation and mis-communication.

- Non-English developers. This doesn't mean the developer has to be fully fluent in English, but if they can't convey their ideas via text/email where they have as much time as they need then it's hard vice versa.

- Yes-(wo)man. A Yes-man is a freelancer that just says yes on everything you say instead of coming up with other solutions. This is common when you deal with Project Managers.

Things I love:

- Talking to engineers and letting them know they can freely give any input.

- Engineers that provide feedback. I had two engineers say they can do the project in the way I wanted it, but also mentioned that they could do it a better way that's faster, safer, and less expensive. I hired them for a few more projects after that and they kept saying the same thing. I ended up partnering with them with equal shares on future projects.

If you need any more help, feel free to message me

I am using oDesk for a couple of small PHP projects now (<$500). I switched from Elance because it seemed that the developers were better. I had to cancel the first project on Elance because the developer wanted to go through the proposal line by line on Skype every day. It was too time-consuming. There's no point in trying to get $10/hr programming if it takes five times as long.

You must find someone who speaks excellent English -- it's too frustrating otherwise. The number of hours a person has worked on other projects the most important. I'm sure anyone can fake reviews. Devs will also say they can do everything, so you have to track down their specialty. I was looking for experience with date functions so I made sure to ask for that and confirm with the devs I shortlisted.

I am currently working on oDesk with a guy from India. His English is excellent and the project is going well. I pay $20/hr. I am very careful with the assignment of hours. Any extra hours are negotiated up front. If he doesn't negotiate an extension on his side then he won't get paid for it.

Another thing to consider is that you may have to work late in the night or very early in the morning, especially during debugging sessions, which can be disruptive to your life. Due to the time difference I would actually prefer to hire an American dev but I didn't see that many on the site, and I guess they would charge much more.

I've found that different cultures tend to have distinctly different values, such as the acceptability of lying and deceit, so maybe it is sad to say but geographical location is a key consideration for me.

The more positive spin on "lying", at least in my experience, was the cultural emphasis on 'pride' or 'saving face' (which, to be sure, all cultures have some of this, but some expect you to leave it at the door in business matters).

I worked with more than a handful of remote developers on projects over the years, and had more troubles with ones in India than in other countries. The troubles almost always stemmed from variations of "this is what needs to be done. do you understand?" followed by a lot of "yes" affirmations. Time would go by, and it would become painfully obvious that there was a basic non-understanding of the task at hand.

This happens on every project - even face to face ones, no doubt - but it happened disproportionately with remote developers in India, and interpreted it as a cultural thing of not every wanting to publicly(?) admit to not understanding something, even if it meant jeopardizing project timelines for the rest of the group.

This has been several years now, and my sample size was small, but it's also not been terribly out of line with war stories I've had from other colleagues over the years.

On the flip side, I did a code review of a project done by a team in .. Ukraine, and I nearly cried at how well done the whole thing was - good tests, decent docs, good structure, etc. It was some of the best code I'd ever seen in 18 years of doing this professionally. I also know that team was not found trawling odesk and trial and error, but was put together via word of mouth and referrals over several months, then treated as a full long-term team, not just a one-project-and-done group.

Hi there,

I've been freelancing for about 2 years now on oDesk and owe so much to that platform. It's allowed me to find great paying jobs with smart people.

Here's what I look for when applying for jobs. My oDesk rate is usually from $30 to $45 /hr - so this may not apply to the lower end of 'cheap cheap cheap fast fast' developers.

* Well written job titles. Descriptive and concise.

* Clear information on where the project stands at the moment. Is this a greenfield project? Is this in the design phase? Do you have mockups? Specs?

* Client history. If I see a client has an average hourly rate of hiring at $10/hr I don't bother applying as I don't think we'll be a good fit. Likewise if the client is new with no feedback or previous contracts completed, I may be hesitant to apply.


These are the key things I look for to find good jobs on oDesk. If you want to attract great developers, keep them in mind, they're a must!

Considering that tptacek, patio11 and many other experienced (ex-)consultants on HN don't have many nice things to say about oDesk (basically, "don't commoditize yourself")... is oDesk a requirement?

If nothing else, HN job threads tend to be full of people looking for remote work.

(I have no experience with oDesk, on either side.)

I am a deeply experienced ex-consultant and agree. That said to be clear in other markets some very talented people use oDesk for working with clients in the US etc.

Sometimes smart people just want something to do and getting paid a bit is nice on top of that. That said I imagine most of it's noise and you really have to focus on sorting through the noise.

If you're just looking for "cheap labor" for the goal of having "a cheap startup" then you've already failed.

I don't have any experience with oDesk, or with hiring developers, but I do have a lot of experience hiring writers on such sites. I have had good successs, but it was a learning process. Here's a little bit of what I've learned.

You have to be very careful about the type of job you hire for. It needs to be highly structured, with very limited flexibility. The instructions I post are often as long as the document that needs to be written. Because my instructions are so explicit, there is little room for error. They know exactly what they need to do, and how to do it. If they screw up, I take it as a failure in my instructions, and tweak them for the next time.

The job details also include something about how they should write their bid. I usually ask them to write a sentence that indicates their understanding. This is usually specific, and relevant to the job, such as a list of topics they're able to write, based on the job description. You'd be surprised how many people don't do this. It's a quick and easy filter.

Once the freelancer has successfully completed an assignment with me, they've earned a little bit of trust. I'll hire them again. Eventually, I'll give them more flexibility, more pay, and more challenging work. Most freelancers won't get there, but that's OK. I've structured things so that it's hard to fail. It's also not particularly easy to get ahead. They've got to pass the filters.

I have to ask; why oDesk? (or Elance or freelancer.com?)

I moonlight on Elance but I'm trying to build a solid portfolio to get away, and I think most decent remote workers do the same, mostly because projects posted on these websites are a race to the bottom.

I would say stay away; you're better of posting the position on the 'Who is hiring' thread here on HN, careers.stackoverflow etc.

If you insist on hiring developers from freelancing websites though, my personal opinion is:

1. Have a realistic budget. You get what you pay for. Yes, there are differences between countries, and not everyone needs to charge $100 an hour to make ends meet but when you're hiring a developer for $15 an hour (from anywhere in the world), you're taking a huge risk.

2. Don't bother with job posts, the signal to noise ratio is too low, especially when you specify a decent budget. Just search around for developers with solid portfolios. Don't pay too much attention to reviews, all it takes is one bad client who's not able to communicate to ruin your 5-star record.

I generally hire devs on odesk for front end work (css/html). We'll put out a request for work, interview the most promising candidates and hire 2. Both of them work on the exact same thing, we just choose the better implementation in the end.

This works for front end development to mitigate risk. Every time we get a very clear winner and it's not always the one we predicted before hand.

I would never use odesk for architecture work, that's what my job is for. Mission critical systems should be developed internally, or at the worst completely understood by someone internally.

odesk is also fantastic for advise or simple scripts on things I don's specialize in. I can often get a script/optimization in an hour that would have taken me a day to figure out myself.

Why is the front end not important? An awesome system that is buggy when viewed on an iPhone may not be that useful. Or spaghetti CSS someone else has to fix down the road.

I guess it's a good advice. Somehow similar to unit-testing: don't test or do outsource things that don't need to be of high quality.

In my experience using sites like oDesk was too detached from any community I consider myself a part of. Speaking only about my first (and only) app development, I found my dev here. And when he had to move on I toyed with Reddit, but in the end came back here for FsF and found another exceptional person very quickly. Both of my hires were remote, but because they were part of HN that gave them credibility - because they are interested in "this thing that we do" and don't want the distraction of social or loss of time being on, FB for example, or being buried in the bureaucracy of something like oDesk. Just my 2 dirhams.

You can't hire solely based on profile, as it may or may not be factually correct. Instead, the key indicator of competence is the number of projects a person has participated in, the duration of each project, and the kind of income they have made on oDesk. This should allow you to draw up a shortlist. Make your projects private, invitation only, and contact the people on your list. Start with a short Skype interview to get a feel for them. Forget tests. Start them off on one or two small tasks, which should indicate both their competence and their capacity to integrate with your team.

Try to find a team-lead first, who will take care about architecture, will help you with interviewing candidats. You should be sure in skills of the team lead, so it will take some time to find 100% matching person. If you have tech guy/girl already in team who really thinks he/she can be team lead (and maybe even have experience), start hiring developers with she/him.

Post a job - maybe somebody is looking for a job and you can't see him/her. And try to find them also - maybe they are working so hard that even don't have a time break for job searching.

You don't its as simple as that! Those sites are terrible!

I've tried multiple times over a span of 4 years and never once had a good experience or even got a single project done -.-

I've had some very good experiences on oDesk. One guy in Ukraine did a complete project in Flash for a really good price.

Review the applicants' portfolios thoroughly. They are a good indication of experience and ability.

The trick is to have very extensive, clear specifications. Also, oDesk is good when you need a specific technical problem solved.

Set some defined milestones, make sure they are met, bail if there are unmistakable signs the contractor can't cut it.

It's very hit or miss. I've had success hiring people on elance, and actually not too many misses. If you're a good judge of talent, you should be able to screen somebody on Skype and know pretty quickly whether or not they know what they're doing. If you think they are okay, then pay them hourly on a small job. If it works out, give them a bigger job, and so on.

The broader topic for this is "outsourcing". When work is done 90/100% remote, to countries far away, it's commonly referred to as "offshore outsourcing". It's a whole separate production discipline, with unique challenges all the way from staffing to day-to-day management.

Many business people and entrepreneurs try offshore outsourcing a couple of times, lured in by the seemingly low prices. They then fail and declare outsourcing as a non-viable solution for product development.

It can and does work, but it requires experience.

So while you are looking for specific tips for searching for developers, you need to be aware that the work doesn't end there - there's a lot more to it.

To get specific though:

1) Always create a private job and invite developers yourself. If not, you'll be spammed with offers from the bottom of the barrel.

2) Filter for location first. If it's your first time with outsourcing, you are best off with developers from countries that are as close as possible to your own culture. For Western Europe, a good bet is Eastern Europe and Western Russia. In the US, you're probably better of with certain south American countries like Argentina and Chile due to the lower time difference.

3) Look for developers that has had long contracts (500+ hours) with 5 star feedback. You can't base much off small contracts with 5 star feedback.

4) Apply same screening techniques as you would, were you hiring locally: Does the guy have an impressive portfolio, CS education, does he have some side projects / Github profile etc, how many years of experience and so on. Don't put too much stock in any single point: There is for example plenty of extremely competent people, who do not have a degree, who do not give a shit about maintaining a Stackoverflow or Github profile and so on.

5) Once you've screened them, invite them to the job listing. Get them on skype, either talk or chat. They need at least a very good written English, if it's your first try with outsourcing. Ask for code samples and review them.

6) If not "just" front-end coding: Have a good, thorough specification ready, for the developers to read. Sometimes they will want payment just to read the spec, sometimes they'll do it for free. Either way, it doesn't show much about their competence.

7) Ask them to deliver a written deliverable of something reasonably advanced. Stuff like a suggested database model, or a very high-level overview of a proposed architecture for whatever it is you are building. This will usually be paid work, between 4 and 8 hours. The purpose is not to get the absolute right db model or architecture - it's to see a written deliverable from the developer. This is invaluable, since it requires real skill, thinking and communication abilities, while still being relatively cheap. If they cannot deliver this, they are not good enough. An exception is if you are looking for some front-end guy, then just get a sample of their markup.

8) Monitor their work closely in the first period of time (first 2-3 weeks is usually enough).

9) Be ready for disappointments. Even with all the above work, you will still not hit a good guy every time.

10) If all else fails, drop me a line, I'll be happy to assist :-)

MortenK, these are great pieces of feedback. It's disappointing that job marketplaces like oDesk/elance don't incorporate these heuristics into their process in attempt to raise the quality bar. In terms of better developers, there are a few companies like toptal (high quality temp placement) grouptalent, and ooomf, etc.

My experience (co-managing ~$300k on oDesk) is communication / expectation alignment is one of the biggest reasons a project fails. Project managers, for example, don't know how to vet computer vision experts. Screen sharing is good for seeing that someone is typing something or "appearing" to do work, but most PMs have no idea if the researcher is programming a canny line detector versus AAM. More importantly, just because they know what they want to build doesn't mean they have experience or knowledge to manage an application lifecycle.

Really, the PM should be able to tap into a software pipeline which compliments/augments the expert's natural workflow. Source code management should be a requirement, enforced by the platform, not something one has to vet for. Roadmapping and proposals should be a paid deliverable and a discrete step within the process. And I don't think continuous integration + test cases should be the exception, they should be the norm. Using such a pipeline is self-selecting as programmers who don't understand these concepts will easily be discovered.

Sorry if this is a shameless plug, this is something we've been addressing for a while at Hackerlist.net (we're in private beta). We've open sourced a good potion of our stack in case others want to use these tools to manage their own software development projects.

To support to your list of tips, MortenK, we've also found github to be a reasonable selector. If a SWE has a github account with several projects, this at least demonstrates rudimentary source code management understanding and an interest in open source. It's also an opportunity to review code. We ended up designing an internal search engine for handling discovery / evaluation as vetting great hackers at scale is a big challenge.

In the project description, mention that "only people who will provide a sample solution/data for the project will be entertained". This is a decent filter to remove 90% of applicants. To decide between the rest 10%, check ratings, previous jobs, portfolio, cost etc and make a choice.

This method worked really well for me: https://medium.com/jotform-form-builder/today-i-hired-6-deve...

The developer I hired worked out well and he is still employed.

I have blogged about this topic a while ago and it made the front page of HN: http://aymeric.gaurat.net/2013/how-i-hired-a-great-web-devel...

I think in general the experience on oDesk/elance type sites is pretty bad. I don't include it in my search at all because I have close to zero tolerance for being on webcam as a form of logging hours (Pretty much every contract I do has a bunch of work away from the computer). In order for me to put up with that you'd need to pay me a large premium. You also either need to not assign me any work complicated enough to want to do pen and paper/whiteboard work on or pay an additional premium to make up for the unbilled hours (similarly if I have to start a webcam every time I reply to off hours e-mail or it's free (especially if my off-hours e-mail responses are unbilled if I answer on a phone). I imagine a lot of senior contractors feel similarly, oDesk type sites seems to have a lot of bad experiences for contract work and a lot of joke employers enough so that it doesn't become a part of your get work strategy if you have other good ways of sourcing work.

With regards to recruiting and the 20% good recruiters charge, most companies are set up to expect recruiting fees and don't convert the extra cash into rates or wages when they don't have to pay them -- in theory a company that spends $0 on recruiting fees should have 20% more to pay, in practice it almost never works that way so avoiding recruiting fees seems to be a one-sided benefit. If you're good enough to get quality contracts through a good recruiter, you're not going to make more money on oDesk and you'll lose billable hours to managing site profile, and going through entire bid/negotiation and in some cases estimation processes without getting paid. Assuming that most contract developers feel the same way, the site is likely to cater to the bottom of the market, which makes finding talent extremely hard.

Remote work has it's own challenges, the things that I've found essential is:

- Great communication - Great documentation - Smart lightweight processes - At certain stages of company avoid outright remote (even 9 days remote + 1 day in office every 2 weeks is a very different animal from outright remote -- you actually meet everyone in the company in person in one of these two cases) - Personality and culture fit as well as general empathy are important: negotiation and responsibility under pressure with people you've never met in person is difficult. - Great management - Manage time zone differential if the product is subject to lots of change: (12 hour cycles for back and forth Q&A on something that's unclear is extremely expensive).

Note that by great in the above requirements, I mean higher quality than most early stage start-ups achieve.

You don't

I've been an oDesk freelancer for the last few months so I'll explain what appeals to me about a client / job. My hourly rate makes me an outlier on the site however, so this is less applicable if you're after cheap and good.

The easiest way to find good developers is have them come to you, and the best to way do that is to have a good job ad.

* Tag the ad with the appropriate tech

* Add a high level description of what the job is. Not just technically, but what is being made too. Also, whether it's as part of a team or completely autonomous.

* Include links, to a company website if you are one, or to your own website / twitter / github / etc if you have them.

* Post hourly jobs only. Fixed price jobs may be appropriate sometimes, but only if they're fully specced out to avoid scope creep.

* oDesk allows you to specify the experience level you want (Entry Level - $, Intermediate - $$, Expert - $$$), treat this more as how much you're willing to pay rather than the real experience level. Ideally, they should correlate, but they often don't.

Tagging the ad with the tech is important, I have a filtered view on the job feed to remove all that isn't relevant to me. I see only ~10-15 new jobs per week and may apply for one or two of them. If your ad is tagged and it's something that I'm interested in then I'll see it.

Next, filtering out the less good / less interested freelancers by making the job application process a little more difficult. Many freelancers spam out applications without even reading the ad contents, you want to exclude them.

* I've seen some ads that ask freelancers to include a certain word in their application so the client can filter based on that.

* Even better (IMO), and the best way to find good hires, is to include a couple of your own questions in the application. oDesk allows you to set these in addition or instead of the standard cover letter approach. It will filter out a lot of freelancers that are solely spamming out applications and don't have time for anything that doesn't fit the standard template. Those that get through, you can filter them on their answers.

Once you have a few freelancers that you're considering hiring, send them a bit of extra information on the job, maybe discuss it a little, set up a Skype meeting. Don't go overboard here, it should be a short-ish process, not a free consultation.

Then, hire someone. If it doesn't work out, we're easy to fire.


An additional note on the job ad (from experience), be honest in it about rates etc. Don't tick the "expert" box if you're looking for someone at $cheap/hr. If you're a startup that's looking to pay in equity that state that up front instead of after going through all of the above.

you dont.

avoid developer from india

Why? I am from India and not a full time developer but mostly system admin/solutions designer/architect (Linux, Windows and networking). I can also code, while my code may not be an elegant as 10+ years experienced in the c , erlang or haskell and may not use clojure, mvc or other frameworks because i don't know how to use them and for smaller projects most of boiler plate code is reusable. (Pls note I don't disagree framework usage for large projects but if the software you develop is not going to have more than 100 concurrent connections then I don't see the need for breakthrough coding and rather straight for python, c# or vb.net will do). At the same time for desktop , server sizing , engineering and setting up an IT shop the right way , I can tell you that i am as competent or better than any westerner. yep i may have my own reasons to believe MS stack or Linux stack is good enough certain workloads depending on situation but i can tell you that i can manage complex enough systems with very little time including the understanding process and will come up with improvements with if few weeks. so please do not generalize. Half of corporate america software is maintained by Indians and i can tell you that before Indians came to outsourcing the code or maintenance for the same was not that great. The IT mess(with outsourcing) is not because of Indians or westerners but mostly due to way you see and use Indians, give them chance to prove and I am sure you will be surprised what a well coordinated equal opportunity team can do. Please note that we don't work the same way as you do and for us to speak up it requires lot of training and comfort with the party we deal, also please note that the competition for us is not just westerners but also with in. Happy help in case if you have specific issue dealing with Indians.

That's not just racist and rude, it's also logically unsound. What do you think the percentage of odesk programmers in India is? 80% maybe? If you avoid people from that entire country, you're getting 1/5 of odesk. For your heuristic to make any sense, programmers on odesk from India would have to be 500% worse at programming than everyone else (relative to salary). In short, I think your ideas about this are just bonkers.

avoid developer in india

Applications are open for YC Summer 2019

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact