Freelance developers vs development frim: the beginner's guide
Content of the article
Starting a project, it's really important to understand which vendor suits your needs best. So, based on our experience, we are gladly explaining when and why you should either hire a freelance developer or switch to a software development agency. I hope it will help you once, nurturing your project, to understand that it's time for UKAD!
The difference between a freelancer and a company
While searching for a vendor, unsophisticated people have to choose between freelance agencies, like Upwork, and several companies atop Google search results. Thus, here come only two options: overpriced and cheap-but-creepy. So, it requires quite deep and complex research to find the right vendor. And here we are, ready to shed some light on the issue.
First of all, the freelancer is a single person that offers his or her labor or service directly. While an agency or a development firm sells their employees' services. From this point comes most of all differences between both kinds of vendors. Thus, it's necessary to understand how many people on the project you need.
Does size really matter?
Talking about software development, the size is almost everything. It's obvious that the larger project you launch the more people you need. But in some cases, it's not clear how many people you really have to hire, so let's count.
First of all, you need developers. Talking about a humble eCommerce project, you could fit into two ones: front- and back-end experts. In some cases, it could be even less, but it's not a full-custom case. Then, you have to find somebody to create your visual part. UI, UX, and visual content are crucial for an application's success. And, finally, somebody has to care about your app's infrastructure.
In a more generous case, we also need a professional Quality Assurance person, a content writer/SEO expert, and a Project Manager with some business analysis skills. But, if it's your first step, you may probably do it yourself.
As a project grows, you may need to attract more developers, otherwise increasing time-to-market may kill it. It's also an important point: while two dudes can develop a kind of MVP in their bedrooms after main jobs, a serious product requires a serious approach.
When freelance is good?
So, let's talk about when it's okay to hire a freelancer. First of all, it could be a good choice for established companies. When you lack somebody for a project, especially with specific skills, just go to Upwork or so, and find a necessary expert. This way requires less time and effort, thus it's beneficial if the freelance contractor is managed well.
The other case, when you can hire a freelancer without any pitfalls, is the very beginning of your business journey. In fact, it's probably the only available option to use top-tier skills before getting huge investments. It also could be a good opportunity for the contractor to gain some status, like with Nike's logo, or join the team later.
How to select your best freelance contractor?
As for me, the best option is this guy your friends worked with and referred to. Because one of the greatest freelance pitfalls is the weak reputation impact: while most software firms do really care about their image, some single contractors do not.
The more common and almost as good as the previous option is to rely on the biggest platforms, like Upwork. Commonly, such platforms take some fee, which makes them a bit more expensive choice, but provides a possibility to control contractors and a kind of arbitrage. Thus, you won't pay for time spent on memes and YouTube videos. It's also a good way because it allows cooperating with contractors from all around the world.
The rest of the methods, like hiring your school friends or distant relatives, and local platforms are the true lottery in which someone wins, but you do not. So, if you decide to act in this way, it's necessary to double-check testimonials and terms of your collaboration to be sure that the further collaboration will be both safe and effective.
Measurements above all
So, you've found a guy with good testimonials and fancy cases and are almost ready to hit the 'Start work!' button. But you shouldn't! At least, without clear and transparent KPIs.
As soon as a freelance developer doesn't come to your office every day, it's not really clear how to manage his or her work. While your employees on remote work under various plans and agreements and are commonly interested to cooperate as long as possible, a freelancer hired for a project isn't ough to have strong motivation. For instance, there are other projects or too good weather to stay at home and work.
While you're working with a big platform providing some measurement tools, like Upwork, it's not a big deal to evaluate the overall time spent on the project. Of course, quality issues always remain, but you at least know how many hours you pay. If you decide to collaborate directly, it's necessary to underline time limits and quality requirements. Then, it's important to discuss credentials sharing: you have to avoid any unauthorized logins and even attempts to share them with a third-party.
We got a problem
Sometimes it goes in the wrong way. In fact, it's not a big deal when you fail the collaboration with the contractor at the start, but we have to understand how to prevent or solve, at least, common issues in later stages.
The king of all pitfalls is miscommunication, obviously. When you work with more than one freelance contractor, it's really hard to manage their work. The only way to deal with it is hiring a Project Manager who will gather everything in one place. Or, if you're already facing this necessity, it's time to understand that your company has grown out of child's pants and start working with a development firm.
The second deepest pitfall is availability. As it gets, the more skilled your freelance contractors are, the more projects they have. Thus, once the best freelancer you work with will be too busy. It could be solved with the next moves. At first, be sure that your management runs like a clock and there are no urgent tasks. Then, describe in the contract the response time, for example, no more than two hours. And finally, find one more expert for such cases.
And the worst thing: legal issues. As soon as most freelancers are natural persons working under civil laws agreements, they have no real boundaries. It means, once your top expert can disappear at the hottest time. How to prevent it? Only by working with an agency working under different law circumstances.
From freelance to software firm
So, you are ready to transpose your project from a bunch of freelancers to a professional development firm (or just want to do it at the start). Get ready to feel some difference!
First of all, you will face more bureaucracy because here come NDAs, SLAs, other agreements, and papers. But it won't be something bad, because right after signing all the paperwork, the workflow becomes calm and predictable. You aren't ough to manage all these free contractors, can rely on the Project Manager and deep into the business part of the product.
It is a common misconception that a freelancer is a budget option. Sometimes it really is, when you have to solve a tiny issue that doesn't require 40 hours of the skilled command's work. But when it's about more or less systematic projects in production, the lack of required experts can be harmful. Even more, working with an established development firm that does care about all these things like reputation, you may notice that spending becomes predictable, so it's easy to manage them, cut somewhere or contrariwise extend to release a new feature faster.
We also have to underline that a software firm is a legal entity. It means, there is a lot of available information about operations, founders, and so on, which make it possible to ensure reliability and avoid fraud. In worse cases, you at least can initiate legal action, whereas the dishonest contractor will simply disappear. But you can always pick only reliable firms with positive reviews from real customers, with platforms like Clutch, it's not rocket science.
You always want to spend some time preparing for cooperation with a new contractor. With a software development company, you can start from the reviews on aggregators, then take a look at its website and social networks. If you see no reviews or a poor website, it should be a red signal. While numerous photos of happy teams tell that people may be happy here and stay loyal for years, building sustainable development teams. As well as numerous articles show that the company has skilled experts who cluelessly share their experience and conduct some research or learning activities inside the teams.
The next step may be a demo project. Arrange a small service, which you would normally order from freelancers or a bit larger, to understand how the processes run. It may let you know every necessary point: from the account manager's work to established planning and reporting practices. If you see anything disturbing or uncomfortable, look for another vendor, don't waste your time and money.
Organizing the Workflow
As for me, the most valuable improvement in the transition from freelancers to the development company is the appearance of the Project Manager role. It is the person who takes care of all the processes dedicated to the development, thus the workflow becomes less chaotic. But it's not the only point.
The first step of the project is building your team from the available pool of experts. It's quite an important part because you can pick developers with the most appropriate expertise. So, building your development team could be just as effective and personalized as with freelancers.
For the rest of the processes, you also will be able to arrange lesser common experts, if the company has them on board, like UX designers or business analysts. At some stages of the product development, it will be a valuable option because of reducing time and effort on searching for freelance experts with the required skills. In case when the current experts' pool doesn't meet your requirements, every good company provides a possibility to hire the most suitable person.
In summary, let's talk about what is the difference between setting goals with freelancers and a development company.
In common, for freelancers, it's important to finish the project as soon as possible to get their money faster, start a new project, and like this. Of course, it's not suitable for 100% of these folks, but it happens more often than other approaches. In this case, it's easy to get disappointing results, so you have to take an eye on every single step of your contractors.
With a development firm, you commonly face diametrically opposed approaches to goals. As soon as the company spends quite a lot of money on sales, marketing, and other operations dedicated to customer attraction, it is more advantageous to build long-term relations. So, such a vendor will care for the quality of products and strive to be helpful. In my opinion, this is the most important difference between cooperation with freelancers and development firms.
Of course, every project is individual and comes with unique requirements to vendors, so we don't force you to make any decisions right now. On the contrary, we encourage you to find the best ways for the development of your business and hope this article will be useful. Otherwise, you can always ask UKAD for help!
- for beginners