For a company that is not in the software business, contracting a custom build is almost always cheaper than hiring a developer. A full-time developer in Canada costs $90,000 to $140,000 per year plus benefits, recruitment, and management overhead, and most internal tools need three to six months of work followed by occasional maintenance. Contracting that same build costs $15,000 to $80,000 one-time, and the maintenance can be a support agreement instead of a salary.
The hidden costs of the hire
The salary is the visible part. The rest:
- Recruiting a developer without technical leadership in-house is a coin flip; bad hires in software are expensive and slow to detect
- One developer means one point of failure: vacation, illness, resignation
- Developers want to work with other developers; retention at non-tech companies is chronically poor
- Someone has to manage them, review their decisions, and own the roadmap, and at a non-tech company that person usually does not exist
When hiring is actually right
Hire when software is becoming your product or a permanent competitive weapon: the tool changes weekly, it touches customers directly, and it needs someone thinking about it full-time. A distribution company building a customer portal once does not meet that bar. A distribution company becoming a logistics-tech platform does.
What a contracted build should look like
The failure mode of contracting is the open-ended engagement that never ships. Protect yourself with structure:
- Fixed scope agreed in writing before any money moves
- A working delivery in weeks, not quarters; 6 to 10 weeks covers most internal tools
- You own the code and the accounts, fully, from day one
- A defined support arrangement after launch, priced separately
The signal that you are ready
If your team runs the business on spreadsheets that only one person understands, re-enters the same data into three systems, or pays for four SaaS subscriptions that each do 20 percent of the job, you have a custom software problem. The question is not whether to solve it, but whether it deserves a salary or a project.