When you’re starting out building an agency or startup, it can be costly to hire a team right out of the gate. Plus it might take awhile to understand what kind of full-time resources you’ll need long term. It’s important to find the right balance between hiring permanent employees and contracting freelancers at the right time.
As a former agency owner and now the founder of a software company, I’ve experienced the pros and cons of hiring in-house vs. outsourcing. I’ve hired full-time employees, I’ve contracted freelancers (heck, I’ve even been a freelancer), and both have brought benefits and challenges to my businesses.
Let me start by saying that I believe founders should do as much as they can themselves for as long as they can. This familiarizes you with the critical foundational aspects of your business and ensures you understand how things work so you can then lead your team to do them better.
When we started Proposify, my co-founder, Kevin Springer, and I did as much as we could ourselves until we could afford to hire full-time specialists.
For example, I designed every version of our logo and the marketing website myself, and then we contracted other design marketing pieces to freelancers until we finally hired Steve Huntington as our in-house designer.
We handled quality assurance ourselves until we hired Janani Ramani, our head of QA.
I looked after our paid spend (Facebook, Adwords) until outsourcing it to a PPC agency for a year and a half. Then we hired Patrick Edmonds, our growth marketer, and transitioned the management of the paid spend over to him.
Kevin handled most of the sales activity until we hired two sales professionals, Amy Sears and Ryan MacDougall.
In each case it went > founder does their best to get the job done > transitions to freelancer if possible > transitions to new in-house hire.
Having a pool of good go-to freelancers is essential for any startup or agency. They can help kick-start your business when cash flow is slow and you’re not ready to commit to full-time resources, they’re a great band-aid when you’re experiencing a brief but busy phase, and they can enhance your team when you need some one-off specialized skills.
I think of freelancers as bridges getting you to safe passage on the other side. A freelancer will get you where you need to go in the short term, and once you have the steady need and the funds, you can hire full time.
However, a freelancer won’t necessarily feel the same sense of ownership or commitment in their work that an in-house employee will. When they talk about your company they don’t use, “we”.
That’s not to say a freelancer doesn’t take pride in their work, but their primary goals have to be a) get the job done and solve the needs of the project, and b) do it fast enough to make money.
Agencies and SaaS companies are similar in that customers expect the company they use to be on stable footing and will be around for the long haul. They aren’t paying for a product; they’re paying for a relationship with you.
It’s difficult for any company to be reliable if they don’t have consistent in-house talent and instead are at the mercy of a freelancer who could disappear overnight along with their files.
Sometimes, if you’ve used the same freelancer for a long stretch of time and you have a good relationship, they may be willing to leave their freelance practice and come work for you full time. This happened in our case with Jennifer Faulkner, who handles our content and brand here at Proposify.
I worked with Jen at two agencies in the past, and she went freelance around the same time I was building my agency, Headspace. We hired her regularly at Headspace for copy and branding projects, and then in the early days of Proposify to edit my writing. Eventually, the timing was right for both of us, and Jen joined the Proposify team full time in 2015.
It was a similar situation with Ricky Ferris, Proposify’s product manager. Ricky and I have been friends for over a decade and he was my first hire at Headspace. Years later when I was getting Proposify off the ground, he freelanced on the side for us and eventually left his other job to work full time here.
I got lucky in both of those cases, but it’s not the norm when it comes to freelancers.
Building a product requires an ongoing process of learning and iterating, and a long term vision and commitment. You’re not going to get that commitment with a freelancer nor will you be able to afford it in the long run.
Hiring a developer might seem expensive, but so is hiring a freelancer for a project like developing a product. A freelancer needs to charge hourly so you’ll likely end up sweating about cash with every single change you make. If you’ve budgeted for a full time developer, you can focus on building a product people love and can depend on, instead of worrying about scope creep.
If necessary, you could hire a freelance developer for a 12-month contract, where they know there’s no guarantee for employment past the contract. But even then you’re probably paying them to not take on any other clients. If that’s the case, why not just hire an employee?
Once you have your lead developer in-house, you may be able to hire freelancers here and there for one-off projects, but in general, you need to look for in-house talent to support and assist the work of the lead developer.
The development of your product is too important to leave in the hands of someone who can take it or leave it at any time.
I see two mistakes that founders without tech knowledge make in their startups:
This is a problem for several reasons.
If you don’t have a tech background, how will you know that what the freelancer is building is technically sound? Maybe the freelancer chooses a tech stack that’s cool and new and because they want to experiment and learn this new framework, but long term it might turn out to be a house of cards. Or maybe they pick something they know they can execute easily, so the job is more profitable to them, but quick and dirty is not what you want when creating your product.
Our CTO Jonathan Down (also our first full-time Proposify hire, btw) would have loved to have built Proposify using node.js - a cool JavaScript framework - but he knew that it wasn’t proven enough at the time to warrant using it, so he opted for the less cool but more stable PHP and MySQL.
This approach was something he knew well, didn’t require a lot of learning time, and it was sound. It’s what Proposify is built in today, and it got us what we needed — customers and revenue.
That’s the benefit of having someone in-house who treats your product like it’s their own. In-house employees make decisions knowing they need to support this baby for its entire life. They aren’t just going to try fun shit and see what happens.
What that translates to is: “I have an idea, but I don’t have the money, knowledge, or talent to get it built. You do it for me.”
It’s lazy, non-committal, and you end up chasing after the Sasquatch because any solid engineer worth their salt doesn’t want to build your idea for free. Ideas are worthless. It’s all in the execution of the idea.
Customer support is such a critical factor to the success of your company; you can’t afford not to have them under your direction and fully committed to your product, your values, and making your customers happy.
The founder and the rest of the founding team should look after customer support for a long time until you can afford to hire an in-house support rep. It gives you frontline access to your customers and how they experience your product - critical information for improving and evolving your business.
Even after you hire full-time support staff, everyone in your company should still take turns answering customer inquiries. That’s what we do here at Proposify - everyone takes a turn once a month to help out on support, and it keeps the whole team in touch with the reality of our customers.
When you’re starting an agency, your first three hires need to come rather quickly. Every hire should free you up as the founder so you can get out and sell, bringing in more clients to grow your business and expand your team.
Let’s look at this scenario by way of example:
You’re starting a full-service digital agency with a focus on the automotive industry, and it’s made up of two founders; one of you is a designer/developer, the other is a marketer.
There’s only so long that you’ll be able to execute the work you bring in. Every hour you as founder spend designing a website or managing a marketing campaign is an hour you could be out selling to potential clients and closing deals.
So your first full-time hire should take care of whatever is chewing up the most of your time.
If the designer co-founder is slammed with design work, hire an experienced designer who can take the reins, not a junior or an intern who the founder will need to mentor and monitor.
Every hire should be able to jump in with both feet and take on client projects, executing extremely well.
As the founders, you’ll need to oversee the work at the beginning to make sure the quality is in line with your company vision and that the client is happy. You need to make sure the job is profitable, but don’t get too hung up on micromanaging every detail.
Once you hire your head designer, developer, and marketer to lead and execute on client work, you as founders will be freed up to manage accounts and bring in new clients. Your main job should be getting more clients in the door.
Eventually, you’ll need a project manager to allow the team focus on executing on their billables and ensure profitability. Later, you’ll want to hire account managers to bring in new clients and manage relationships.
There are only two situations where you should hire a freelancer for your agency:
If you do work with freelancers, there are ways to make the whole experience more successful. Check out this blog post we wrote in the past about how to make the most of your freelance relationships.
If you’re at the stage to start hiring full-time staff, here’s a post I wrote about our hiring process here at Proposify.