Software company or freelancer: which one your project needs
By predev. Solutions
Most people asking this question already have two quotes in front of them. One is from a freelancer, one is from a software company, and the company's number is two or three times higher. The obvious reading is that the company is charging for its office.
Sometimes that's true. More often the two quotes describe different amounts of work, and the cheaper one leaves some of it for you to discover later.
Here is how to tell which one your project needs.
Count the skills, not the screens
A working product needs more than someone who writes code. Even a modest app usually needs:
- someone who decides what goes into the first version and what waits
- a designer who turns that into screens people can use without instructions
- a mobile developer, and often a separate backend developer for the server, the database and the admin panel
- someone who tests on real phones before users do
- someone who handles the store submissions, the server and the domain
A good freelancer can cover two or three of these. Very few cover all of them well. When a single person quotes for the whole thing, ask which of these they will do themselves and which will simply not happen.
If your project is a landing page, a small website, or one clearly scoped feature on an existing system, a freelancer is often the better choice. There is only one skill involved, and you pay for one person.
Ask what happens when that person is unavailable
A freelancer is one person. They get sick, take a full-time job, move to a bigger client, or travel. None of this is bad behaviour, it is how freelancing works. But if your product lives in one person's head and one person's laptop, it stops when they stop.
Before you sign with anyone, check three things:
- The code is in a repository you own, under your account, from the first week.
- Your server, domain, and store accounts are in your name, with the developer added as a user.
- Someone other than the author could read the code and continue. Ask for a short technical handover document at the end of each phase.
A software company should give you all three without being asked. A good freelancer will agree to them immediately. If anyone resists, that tells you more than the quote does.
Look at who is around after launch
Launch comes roughly halfway through the work on a product. The first months bring bug reports from phones you never tested on, new Android and iOS versions, payment provider changes, and the features users ask for once they actually use the app.
A freelancer who finished your project has usually started the next one. A company that plans to keep you as a client has a reason to answer your message in month six. Ask both, in writing, how support after launch works and what it costs. A vague answer means there is no plan.
Compare the risk as well as the price
The cheaper quote is cheaper if everything goes to plan. Price in what happens if it doesn't:
- If the freelancer disappears halfway, what does it cost to hire someone new to understand and finish the code?
- If the design has to be redone after launch because users get lost, who pays for that?
- If there is no testing, how many one-star reviews will the first release collect?
For a small, well-defined job, those risks are small, and the freelancer's price wins. For a product with several user types, payments, an admin panel and a launch date you have promised to someone, the risks are large, and they land on you.
A simple rule
Hire a freelancer when the work needs one skill and you can describe it in a paragraph. Hire a software company when the product needs several skills working together, when it has to keep running after launch, and when you cannot afford for it to depend on one person.
Whichever you choose, keep the code, the accounts and the documentation in your name. That one habit protects you better than any contract.
Written by predev. Solutions