The pros and cons of a freelancer versus a software development company are quickly stated. A freelancer usually costs less, can often start sooner and puts you in direct contact with the person writing the code, but everything rests on one person. A company usually costs more and takes longer to begin, and in return gives you cover when someone is away, a wider range of skills and support after launch. A freelancer suits small, well-defined or specialist work that someone on your side can direct. A company suits a system the business relies on every day.
We set the two side by side in our comparison of a software company and a freelance developer. CodeFirst is a software company, so weigh our view with that in mind. This article does a different job. The label tells you less than the answers to a few direct questions, so here are the questions to put to each, and what a good answer sounds like.
Questions to ask a freelancer
The weak points of working with one person are continuity, range and what happens after delivery. These questions test each of them.
What happens to my project if you are ill, on holiday or take a full-time job? A good answer is specific. The freelancer names another developer who has agreed to cover, or commits to keeping the code and written notes in a state a stranger could pick up, and says how much notice you would get. “That will not happen” is not an answer.
How many other clients do you have, and how many hours a week will mine get? You want a number of days and the hours they are reachable. A freelancer with several clients is normal. One who cannot say where your work fits among them will be hard to plan around.
Where will the code be kept, and whose name are the accounts in? The good answer is a repository (the store that holds the code and its history) owned by your organisation from the first day, with hosting and the domain name registered to your business too.
Will the contract assign the copyright in the code to us? Under UK copyright law the first owner of code written by a freelancer is normally the freelancer or their own company, and ownership passes to you only through a written, signed assignment. A good freelancer knows this and offers an assignment on payment. Our answer on who owns the source code explains what to check, and it is worth taking legal advice on the wording.
Which parts of this job are outside your main skill? An honest answer names them, for example hosting, database tuning or screen design, and says who would do those parts. Be wary of anyone who claims to do everything equally well.
Who checks your work? Nobody reviews a lone developer’s code by default. Good answers include automated tests, another developer who reviews important changes, or a willingness to have the work looked at independently.
What do you do after delivery? Many freelancers move to the next project. Ask how long faults will be fixed without charge, whether continuing support is offered and on what terms.
Two further checks apply in the UK. Ask whether the freelancer holds professional indemnity insurance. And if you engage them through their own limited company, the off-payroll working rules, known as IR35, may apply. HMRC’s guidance says that a medium or large client is usually responsible for deciding the worker’s employment status, while for a small client the decision rests with the worker’s own company. Find out which you are, and take advice if you are unsure.
Questions to ask a software company
A company’s price is higher because it covers management, cover for absence and a range of skills. The questions test whether you would get those things.
Who will do the work, and can we meet them before we sign? A good answer lets you meet the developers, not only the person selling. Ask whether they are employees or contractors and where they are based. Some companies pass work to freelancers or to another firm, which is not wrong but should not come as a surprise.
Who takes over if that person leaves you? Continuity is the main thing the extra money buys, so test it. A good answer names a second person who already knows the system and describes what is written down. A company in which only one developer understands your system has the same weakness as a freelancer, at a higher price.
What does the price include besides programming? Ask for the parts to be listed: project management, testing, design, release and documentation. You can then see what the overhead pays for and compare it with a freelancer’s quote for the programming alone.
Is the price fixed, and what would change it? Either a fixed price or a rate for time is acceptable if it is stated plainly. With a fixed price, a good answer includes a written scope, the checks the finished work must pass and a rule that changes are quoted before they are made.
Who do we talk to day to day? A project lead is useful. A project lead who stands between you and the developer on every question is not. Ask whether you can speak to the person doing the work when it matters.
What happens after launch? Look for a stated period in which faults are fixed without charge, followed by a monthly support arrangement with written terms that you may take or leave.
If we wanted to leave, what would you hand over? A good answer lists the code, the data, the credentials and documentation another team could follow, and offers paid handover time. A company that maintains systems built by others will answer this readily, because it has been on the receiving end.
How to weigh the answers
Put the answers side by side and give the most weight to the ones that are hardest to fix later.
| If this is true of the work | Weigh most heavily |
|---|---|
| The business relies on the software every day | Cover for absence, and support after launch |
| Nobody on your side can judge technical work | Who checks the work, and whether an outside review is welcome |
| The job is small, specialist and clearly defined | The individual’s skill in that area, and price |
| The system will be in use for years | Ownership of the code, the accounts and the documentation |
| It is a first version you expect to replace | Speed and price |
A freelancer who answers these questions well is a safer choice than a company that cannot. The reverse also holds: a low rate does not make up for vague answers about ownership and continuity.
Whichever you choose
Three arrangements protect you with either kind of supplier, and all can be put in place at the start.
- The code sits in a repository your organisation owns, and the supplier is given access to it.
- Hosting, the domain and any third-party services are registered in the organisation’s name.
- A short written note records how the system is built and how a change is released, and it is updated as part of the work.
With those in place, a change of supplier is an inconvenience. Without them it can become a recovery job, as our page on what to do when a developer has left describes.
Before you speak to anyone, write down which of the questions above matter most for your project, and ask them of every candidate in the same words. Our list of questions to ask a software supplier has thirty in all, with a table for comparing the answers.