How to hire on online freelancing platforms and still keep your sanity
16 Mar 2023 - Frans Vanhaelewijck
Let’s hire a developer
If your landing page, prototype or MVP gets some traction and you need a real app, you may consider going online and hiring a developer. There are many platforms to hire freelance developers and this post is not a comparison to let you decide which is best. Rather we’ll explain some tips & tricks you might use on any platform.
Hiring tips for developer market places
First and foremost, always handle all communication respectfully and treat people like you would like to be treated. Unfortunately, a majority of the projects and bidders are of low quality, so you need a process to make sure you get the quality coders to submit a bid for your project.
Regardless of the platform you will use, be prepared to spend some time learning how it works as there is a lot of bid spamming going on.
Things to watch out for when outsourcing on Upwork or any other platform:
Prepare yourself well
Prepare your work well, and make the deliverables absolutely clear. The more time you spend detailing the task, the steps and the expected result, the higher your chances of success. A good preparation should contain
- a list of all use cases and their detailed steps
- a list of screens to be developed
- if not all, at least sample designs of the most important screens
- a database scheme and in case you don’t have the analysis skills to set up a database scheme, describe all entities (like customer, vehicle, device, delivery location…) and the attributes of each of these entities. Also describe how these entities relate (e.g. a customer can have multiple delivery locations, a delivery location can only be linked to one customer…)
- an exhaustive list of all features (think about reports, regular batch jobs, automated backups, archiving, user roles and data protection).
Don’t go cheap and put forward a realistic budget. Setting project budgets too low is one of the reasons so much bidspamming is going on. Bidders put in low prices in the hope to get a positive signal from the project owner. Only then they read the project description in detail and in case it is not fully specified, will put in a price for the minimal set of features requred to deliver the project. They charge you later for all the extras you forgot but that you do need.
Be ready to try out a small-scale project that you can afford to loose.
I am human
Hide the following sentence somewhere in your project description. “Please include ‘I am human’ in your answer”. You’ll be amazed how few Upwork bidders actually do it. When you get replies (you should get 10-15 replies or more for a decent project description) immediatelly discard any bid that does not respect this requirement.
The thinking is that if the bidder doesn’t even fully read the project description, how can the bid be serious. I do understand why people do bid spamming. It’s like carpet bombing, they will hit a target from time to time. But I prefer bidders that actually read the project description.
Measure reaction speed and assess level of English
For all remaining bids that qualify (typically only 2 or 3) ask some trivial questions about the bid and measure how responsive the bidders are. The more responsive, the better. Also evaluate their English, if you can’t communicate well during the bidding, it will certainly not work during the actual project.
Agency? No thanks
Never work with agencies. It’s the owner who answers all the bids and once you award the project, you get a junior assigned to your project. Always work with solo entrepreneurs.
Talk to me
Try to get the bidder on a video call. It will give you so much more information than just communicating over email or slack.
Although this is not strictly necessary. I have worked for 4 years with a developer who I never spoke to. But I think you should only do that once you get some experience. The advantage of not forcing people to do a video call is that you don’t scare of the introvert individual who really hates to be on video calls.
Pay correctly and pay fast
Part of your project description should be a set of milestones, each with a clear objective and a set of deliverables. Link each of these milestones with a percentage of your budget. If the milestone is reached and accepted (most platforms have an explicit support for milestone acceptance and linked budgets), pay the coder immediatly.
If you have asked for extra features which were not in the initial scope, add a bonus payment to compensate for the extra work. The inverse is also true, if the milestone scope was reduced for whatever reason, renegotiate the linked budget with your coder.
In case the first milestone fails for whatever reason, consider to stop the project prematurely. If things go wrong during the honeymoon, there is not a lot of hope for the marriage.