Luckily, I – who have nothing to do with developing – have been working for some time surrounded by developers. Having had the chance to look at their work with a completely fresh approach allowed me to better assess what are the pros and cons of working with both an agency and with a freelancer.
You need to have your project carried out, if not by, at least with someone else, so chances are that one of the first questions you asked yourself was 'Should I hire a freelancer or a software development company?'
First of all, before jumping into hiring your miracle worker, you should give some thought to your idea’s viability in the market. Passing over research on customer needs might easily lead to your business failure even before it takes off. Delving into what customers expect from a service will get you closer to the desired outcome.
To start with:
- What problem would your product solve?
- Does it improve your customers’ life in any way?
Spoiler alert: developing agencies usually include a customer marketing specialist in their offer.
Once you have a clearer picture, you can move on to the management and technical spectrums. In no particular order of importance, I have chosen four key factors to be taken into account:
- Project size and technical requirements
- Project duration
- Management delegation
- Stipulated budget
Depending on what your situation is regarding each point, you will need to sway your decision towards one option or the other.
Project size and technical requirements
The level of intricacy of your project will surely impact on your decision of whom to work with. If your plan is to improve an existing tool or system, you might need to compete with current market leaders, which, of course, means you will have to dive into this big time.
If this is the case, are you ready to take on full responsibility for the project or would you rather someone more experienced handle it?
Agencies are used to working with highly complex projects saving almost all trouble from your side. If you need guidance when it comes to listing technical requirements, this is the time when agencies enter the picture. Being a team made up of more than one standpoint, it will be easier for them to pinpoint areas of improvement, especially if this is your first startup, and to provide useful advice.
Be ready to make room for disagreement when agencies advise you against an idea you have – if they say so, they probably know what they are talking about. A full deck of talent is going to be ready to fine tune your software product during all stages: defining, designing, developing, testing, launching.
It is not realistic to expect one person to skillfully manage such an ambitious project, especially if it entails heavy functionality. No one can be a specialist in UX, UI design, development, testing, etc. Too many roles to play make you a master of none. Here things get tricky. It won’t be the freelancer but you who will have to take care of, basically, the whole project. There is very little chance that a freelancer will give you constructive advice or recommendation.
But if your project is simple and you are not exactly worried about quality, then a freelancer is the best option as they are usually easy to find, cheaper and more focused on speed.
Even better if you are already working with a development team and only need one particular skill. That’s when you can easily find someone with great expertise in one area.
If your project is supposed to be long-term, it will need ongoing maintenance. Agencies have a reputation to take care of, so you can be sure that post-launch support will be included in the contract.
In case the project needs to be delivered ASAP, in-house teams perform their tasks simultaneously so they can rush but with a much smaller risk of committing mistakes. They work as a unified force – should one member get bogged done by workload, there will always be another one to bail them out of the problem. Also, there will always be a back-up if any team member decides to take time off or go on holiday.
As previously mentioned, freelancers are usually working on several projects at the same time and, therefore, more interested in shortening delivery time. No matter how good a person is at multitasking, inefficiency and mistakes always break trough. Unless you mind running the risk of having an outdated or sloppy final product or are short of time, you can start looking for the one that best suits your needs.
So now we come to the pivotal question of who is going to be in charge of managing the project.
Without a standardized procedure, agencies wouldn’t be able to work as such. This doesn’t happen simply because they need positive feedback, but because they prefer long-term relationships with clients – e.g. supporting and improving products they have built – rather than constantly searching for new ones.
Mind you, this doesn’t mean that agencies cannot be flexible, they will always go out of their way to try and work in accordance with your requirements. And, of course, time-zone differences can be quite annoying sometimes, but the number of efficient and successful developing agencies available is not limited to only one region.
If time-zone difference is something that you are definitely not willing to deal with, then a freelancer is your right choice as they are used to working at odd hours. Bear in mind that we can all do this once or twice, but someone who doesn’t keep to a healthy working schedule on a daily basis is prone to be overcome by weariness and, sad to say, jeopardize your project. And who wants a flawed end-product?
When deciding how much of a budget you are to allocate to your project, remember that usually you get what you paid for. If a freelancer hasn’t done a job properly, expenses that had been hidden so far will come to light: most likely you will have to invest twice as much in an agency to get things fixed up.
Certainly, this is the most expensive option in the short term. There are members in a dev team that you might not even think of – sales assistants, marketing managers, project managers, etc., that inevitably push up their prices. Nevertheless, some agencies offer you the option of only paying for resources that you actually need.
Yes, a freelancer is only one person and you only have to pay for the job itself, and not cover for other expenses such as health care or holidays. But, no matter how simple your software product is, it is still a marketing tool. Constant upgrading is needed, especially for apps since they need to function equally well on all platforms available. In all likelihood, you won’t be charged much, the turnaround will be short and the final result will be a well-polished product.
However, it’s no news to say that technology is constantly changing and being upgraded. Without after-launch support, as freelancers are usually pressed for time, you run the risk of becoming outdated sooner rather than later. Don’t be surprised when the time comes for your freelancer to move onto new projects – rumor has it that they hate monotony.
The point of this analysis is to show that there is no categorical assurance that one or other option is best. What we cannot deny is that agencies cover for a wider range of services and when it comes to big scale concerns, they are able to cope with the pressure. They are also less likely to team up with a competitor since abiding by NDAs is part of their daily work. It only remains for you to decide how important your task is.
If what you have in mind is rather small and needs to be taken care of rather quickly, then a freelancer might very well be a great choice, especially if you are in need of one skill in particular.
The best advice I can give you is you should not hesitate to inquire for further information or advice. In fact, giving a quality estimate and advice should probably be the best indicator of whom you should partner up.