A software company or a freelance developer?
A good freelance developer and a good software company can both build and look after business software. The choice turns on how much the business depends on the system and what happens when the person doing the work is not available.
| Aspect | A freelance developer | A software company |
|---|---|---|
| Cost | Usually lower. A freelancer has few overheads, and you pay only for the hours or the piece of work you commission. | Usually higher for the same piece of work. The price also covers managing the work and providing cover when someone is away. |
| Continuity if someone is ill or leaves | The knowledge sits with one person. If they are ill, on holiday or take a full-time job, work stops until they return or you find someone else. | More than one person can work on the system and how it works is written down, so an absence slows the work without stopping it. |
| Speed to start | Often quick. A freelancer who is free can begin within days, with little paperwork. | Usually slower, because a written scope and a price are agreed before work begins. |
| Range of skills | Often deep in one area, which is ideal when the job sits inside it. Work outside that area, such as hosting or database tuning, may need a second person. | Design, programming, testing, databases and hosting are covered between several people. A company is less likely to be the leading specialist in one narrow field. |
| Who you talk to | The person writing the code, with nobody in between. | Sometimes a project lead as well as the developer. There is someone else to contact when one person is away. |
| Who owns the code and accounts | It depends on the agreement. Check that the contract assigns the code to you in writing and that hosting and domain accounts are in your organisation's name. Take advice if the wording is unclear. | The same check applies to any company. With CodeFirst the client owns the source code, the accounts and the documentation. |
| How changes are priced | Usually by the hour or the day, which suits small changes and work that cannot be defined in advance. | Defined work is quoted at a fixed price against a written scope. Ongoing care is a monthly support plan. |
| What happens after launch | Many freelancers move to the next project once the work is delivered. Some offer continuing support, so ask before you start. | Support after launch is part of the offer, as a monthly arrangement covering faults, updates and small changes. |
A freelance developer is the better choice when
- The job is small and well defined, such as a single feature or a short piece of specialist work.
- You need a specialist in one particular technology or field, and the work sits squarely within it.
- You have technical staff who can direct the work, review it and take it over afterwards.
- The budget is tight and the software is not something the business relies on every day.
- You are testing an idea and expect to replace the first version.
A software company is the better choice when
- The business relies on the software every day and cannot wait for one person to become available.
- The work needs several skills at once, such as design, a database, integrations and hosting.
- You want the price agreed before work starts, with the risk of an overrun carried by the supplier.
- The system will need looking after for years, and you want that arranged from the start.
- Nobody in the business can judge the quality of the code, so you need a supplier that answers for the result.
What usually decides it
Price is the first thing most people compare, and a freelance developer will usually win on it. In our experience the decision turns on other things.
How much the business depends on the software. A tool that saves someone an hour a week can wait while its author is on holiday. A system that takes orders or produces invoices cannot. The more the business relies on the software, the more it matters that a second person can step in.
How long the software will be in use. A freelancer is often engaged for a project and moves on when it is delivered. Software in daily use needs attention for years afterwards: security updates, and changes as the business changes. If you expect that, arrange it at the start with whoever builds the system.
Whether anyone in the business can judge the work. With a technical person on staff, a freelancer can be directed and their work reviewed. Without one, you are relying on one person’s account of their own work.
What to ask either of them
The same questions apply to a freelancer and to a company, and the answers tell you more than the label does.
- Who will own the source code, and whether the written agreement says so. If it is unclear, take advice before signing.
- Where the code is kept, and whose name the hosting and domain accounts are in.
- Who does the work if the usual person is unavailable.
- Who fixes faults after delivery, and on what terms.
A freelancer who answers these well is a safer choice than a company that cannot.
A middle route
The choice does not have to be made once and for all. Starting with a freelancer is a sensible way to get a first version built. Set it up so that a handover is possible later: the code in a repository your organisation controls, the accounts in the organisation’s name, and a short written note of how a change is released.
If the system grows into something the business relies on, a company can then take it over without starting again and look after it under a maintenance arrangement. If the freelancer has already moved on, our page on what to do when a developer has left sets out what to secure first.
Questions we are asked
Is a freelance developer cheaper than a software company?
Usually, for the same piece of work, because a freelancer has fewer overheads. The comparison can change if hourly work overruns, or if you later pay someone else to learn the system from the beginning. Compare the cost of owning the software over several years, including support, and not the build alone.
What happens if our freelancer stops being available?
If you hold the source code, the logins and some documentation, another developer or a company can take the system on. If you do not, recovery takes longer and starts with whatever can be found on the server. Our page on what to do when a developer has left sets out the steps.
Can a software company take over work a freelancer started?
Yes. We start with an assessment, usually a fixed-price code audit. It establishes whether the system can be built from its source code, released in a controlled way and restored from a backup.
Can we use both?
Yes. Some businesses keep a freelancer for specialist or occasional work and use a company for the system the business relies on. It works when one party is clearly responsible for each system and all the code sits in a repository you control.
Not sure which suits you?
Tell us about the system and what you need done. If one of the alternatives is the better fit, we will say so.