Skip to main content
GullySystem
A practical guide

How to hire a developer without getting burned

Ganesh HSStrategy and Technology, GullySystem
Practical advice · 5 min read

In this guide 6 sections
The short answer

Write a one-page brief first, set a small paid trial task, and keep ownership of the code, the hosting and every account from the start. Pay in stages against work you can open and test. Walk away from anyone who dodges access questions or wants the full fee upfront.

Start with a brief a stranger could follow

Most bad hires begin with a vague message. If you cannot say who will use the software and what those people do all day, nobody can quote honestly. A loose brief invites a loose price.

Write one page. Name the users, the three main tasks, the files the software must read and what finished looks like. A photographed whiteboard sketch is enough.

Give every candidate the identical page, whether they came from Upwork, Fiverr, Toptal or a friend’s referral. Within a day you will see who reads closely. The rest paste a template reply.

  • Who uses it and on which device
  • The three tasks it must do first
  • Spreadsheets and systems it connects to
  • A date that matters, and why
  • What you will leave out of this round

Test the person with a small paid task

Portfolios show polish, not judgment. A short paid task shows how someone thinks. Take a slice of your real job, such as a login page with one filtered report, and fix the number of days in writing.

Watch the questions. Do they check awkward cases like a blank field or a duplicate phone number? Do they flag doubts on day one? Good developers raise problems early, and they send a short screencast of what they built instead of a vague promise that it is nearly ready.

Pay for the trial. It is fair. It filters out people hunting for free ideas, and it hands you real code to inspect, which a friend can run a linter over in an afternoon.

Keep ownership from the first day

Create the repository under your own Bitbucket or GitHub account and invite the developer in. Do the same for hosting on Heroku, DigitalOcean or Vercel, for the domain registrar, the payment gateway and the app store listing. Never let anyone register these under a personal email.

This costs nothing. It removes the worst risk. A builder who vanishes, or asks for more money before returning your property, can no longer hurt you much.

Ask for commits to the shared repository every working day. Code that lives only on a private laptop is a loan you never agreed to. Keep passwords in a shared vault with a keychain app on each phone, and never paste them into a Telegram chat.

Pay in stages against things you can open

Split the fee into milestones. Each should be something you can click through on a test link, such as a working login, a saved invoice PDF or a downloadable CSV. Pay when it works. Not when it is nearly there.

Hold back the last instalment until handover is complete. That means the source code, a setup guide, the account list and one recorded walkthrough call that a stranger could follow a year from now.

Never pay the whole amount in advance. A sound developer understands why. Anyone who argues hard has shown you who they are. Read every clause on withholding payment, arbitration and a nondisclosure promise before you sign, and strike any that bind only you.

Warning signs worth acting on

Some signs appear early. A quote lands within an hour of a vague message. Answers change each time you repeat a question. A discount expires tonight. Praise sits on testimonial pages that you cannot trace to a real company.

Listen to how they speak about tests and backups. If both sound optional, your first outage will hurt. Ask what happens if they are unreachable for two weeks, then note the pause before they answer.

Before signing, send the trial result to a technical friend for a short review. One hour is cheap insurance. If a project still goes wrong later, write a plain postmortem so the next hire starts with the lessons rather than repeating them.

  • No trial task, no references, no live examples
  • Refusal to use your repository or hosting account
  • Repeated requests for passwords over chat
  • A noncompete clause for you but no written scope for them
  • Quiet moonlighting on three other jobs

Developer hiring checklist

A one-page checklist in three blocks. Before: the written brief, a shortlist of three and the trial task. During: access granted, daily commits, milestone payments and a weekly review call. After: code handover, accounts transferred, setup guide and a named contact for faults. Every line has a tick box and a date.

Open a blank worksheet to print

Questions owners ask

How long should a trial task last?

A few working days is enough. Cover one real slice of your job, such as a login with a report. Past a week it starts to feel like free work.

Do I need to understand code to hire well?

No. You need to open what was delivered and click through it. For the code itself, ask a technical friend or a second developer for a short review.

Should I hire full-time or by the project?

Choose by the amount of work. A defined build suits a project arrangement. Steady daily work across months suits a dedicated engineer or a team added to yours.

What if the developer already holds my accounts?

Ask for them to be moved to your name now, in writing. Change passwords after the transfer. If they refuse, treat it as serious and take advice.

Browse all guidesBack to top ↑
Next step

Have a specific situation to work through?

This article covers the general case. Tell us what you’re actually dealing with and we’ll respond directly.

Share Your Requirements