At 10x Management, we’re experts in helping companies source the right tech talent and setting freelance projects up for success. Here’s a comprehensive guide, gleaned over the course of thousands of engagements, that emphasizes key considerations, ensuring you make informed decisions for your projects.
1. Define What Success Looks Like
It might sound counterintuitive to start by outlining the desired end result/outcome of a project, but knowing where you want to end up dictates the right roadmap to get there.
No two projects are alike – some projects have a set deadline and a clear budget. Others are ongoing development projects where you pay a consultant (or a team) for months or even years, with only a loosely defined budget.
If you’re bringing on a contractor (or contracting team) to supplement or augment your nonprofit, what would success look like for you?
Providing a detailed description of the desired deliverables will help you and the freelancer map out the best way to get there.
2. Define the Parameters and the Project Requirements
Now that you have an idea of what success looks like, it’s time to define how you’ll achieve that success.
Start with answers to generic questions that can apply to any project:
- When will the project start?
- What is the project deadline? (If there is one)
- What is the project budget?
- Are you leaving enough room for contingencies with timeline and budget? (Recommended – building technology can be very unpredictable)
- Does your nonprofit need a full-time commitment (40-hour work weeks), or is part-time okay?
- Does your nonprofit need someone working in your timezone or is that unimportant?
- Does the project require a discovery phase? Or are you diving straight in?
Next, look to answer more specific questions about the project:
- What are some of the current challenges your nonprofit is trying to solve?
- Have you settled on a proposed fix in which you have confidence? If so, what is the proposed fix?
- What platform will you be using? Web? Mobile? Both? iOS? Android? VR? Etc.
- What programming languages are required? Python? Java? Ruby? Etc.
- Once the project is underway, are you open to changing the deliverables? Or is your scope set in stone? Be careful that you don’t look to change the project too much once you’ve already started work! This is known as Scope Creep.
Lastly, don’t underestimate the importance of practical logistics:
- Are you expecting the freelancer to work during normal business hours? Or is a flexible schedule allowed?
- What channels will you use for communication and with what frequency? How often will you want to “meet” with your freelancer?
Is it clear how they will invoice/track hours and has a payment schedule been agreed upon?
3. Budgeting for Success
Here are three potential compensation structures for your freelance projects, with pros, cons, and examples listed for each:
- A Time-Based Project (Hourly Rate)
A freelance developer charges $150/hour to help your nonprofit build a new mobile app. You get weekly invoices and pay as the hours are worked.
Allows for flexibility and minimal commitment; allows you to evaluate the project and pay as you go; you may be extra productive with the hours that are worked; potential to come in under budget if the project isn’t as complex as you first thought
Potential for hours to unexpectedly balloon (pro tip – set up parameters in advance to address the max # of hours that can be worked weekly/monthly without additional approvals from you); more frequent invoices can be administratively annoying for some (pro tip – this last item can also be a positive as more frequent invoices means more clarity into the work being conducted)
- A Fixed Bid Project
Your nonprofit has a $200,000 budget to perform a security upgrade to integrate 2 Factor Authentication for users to log into your system.
Clearly defined budget upfront, hopefully informed by dedicated research (on both your end and the contractors end – this might require a paid discovery phase); commitment from a freelancer before the project starts that the outcome can be achieved with the fixed budget; you can avoid the scope of the project changing too much
Life is unpredictable and unforeseen problems can arise when it comes to implementing technology. If unforeseen challenges arise and you haven’t budgeted for them, you’re left in a tricky situation and might need to increase the budget or timeline
- A Retainer (Weekly, bi-weekly, monthly, etc.)
You pay $8,000 per month upfront for 40 hours of a freelancer’s time throughout that month
Less administrative; you’re guaranteed 40 hours of work and have no worries about conflicts in a freelancer’s schedule; shows trust in the freelancer to manage their time; may provide a level of independence in how they spread out the hours; permission needs to be granted to work beyond the retained hours giving you additional controls
You might not actually be able to provide 40 hours of work in a month, in which case you’re paying for time that isn’t used and that time usually won’t roll over to the next “period”; potential for confusion about how and when the hours are worked; potential for confusion around communication – ie. a company may say, “I thought you were working those hours,” and a freelancer may say, “I was waiting for you to assign me something…”
Figure out the budget and compensation structure that best suits your nonprofit. Our recommendation from this list is time-based (hourly rate) – we’ve found this to be the situation where there is the greatest clarity and transparency on all sides.
4. Establish A Single Point of Contact from Both Sides
We strongly recommend that you have one primary point of contact between your nonprofit and your freelancer. If you’re working with a freelance team, delegate one person from the freelance team to be the single point of contact for the project. If there are many people working on the project at your nonprofit, delegate a single point of contact to communicate with the freelancer or freelance team.
You want to avoid mixed messaging:
- From the freelancer’s perspective, imagine getting conflicting messages from multiple people at a company: “well Sam told me this but Zoe told me that…”
- Conversely, from a company’s perspective, imagine speaking to multiple people on a freelance team and hearing conflicting messages. “Jeff said the problem is with our server, but Andrea thinks the code base is flawed.”
Having a single point of contact simplifies the communication stream. You tackle situations as they arise in an orderly fashion, avoiding confusion.
5. Start the Project Strong
Once you’ve agreed on terms and have a signed contract, have the single points of contact from each side connect on a call or email chain to kick off the project. Having a regularly scheduled call once or twice a week or a daily “standup” (or whatever cadence works best) between the points of contact is a good idea to keep the project on track and everyone on the same page.
Or, work with 10x Management and we’ll help ensure all of the above is baked into your project for the greatest chance of success!