How to Structure Contractor Deals

A few articles ago, we talked about the economics of hiring a US-based contract software development shop and how to find contractors to help you build your product. As we talked about, hiring a contractor can sometimes be the right way to either augment your team or perhaps, on rare occasions, be your entire team.

If you’ve decided to work with a contractor, what are the options for how you structure the deal to best align your interests? Again, for purposes of this article, we’re talking about US-based contract shops. However, most of the principles will apply to any contractor relationship.

There are three typical ways to hire contractors: Hourly, monthly, and per-project. Let’s talk about the benefits and drawbacks of each.

Hourly

It’s pretty common, especially when you’re dealing with a contractor for the first time, for them to propose an hourly arrangement. With very rare exceptions, hourly arrangements are great for the contractor and bad for you. Why? The incentives are completely misaligned.

The contractor is incentivized to spend as much time as possible, and you need them to spend only as much time as is required to complete the work. Even for the most ethical contractors, if compensation is based on the time being spent, it’s very difficult not to stretch work out or do more than necessary.

The benefit of hourly is that it’s very easy to “just get going” on a project. You don’t have to do much prep work up front to bring someone on. They step in and go.

Monthly

I like monthly contracts, but only after you’ve worked with someone for a while and know exactly what you’re getting. I typically think of monthly contractors as full-time employees who, for whatever reason, it doesn’t make sense to hire as W-2 employees. An obvious reason why this might be necessary is if they are not based in the US (or whatever your country of origin is).

Monthly contractors should have the same level of scrutiny as hiring a full-time employee, and should have completed several project-based cycles (see below) with you.

Per-project

Far and away the best way to hire and evaluate contractors is through project-based work. It requires more work from you up front to think through logical buckets of work, but project-based work aligns everyone’s incentives toward the same goal. Everyone agrees that a given block of work is worth a specific value.

If you believe the project should take a month and it only takes two weeks, either you’ve found someone special or you did a poor job of estimating the work. Conversely, if you believe the project should take two weeks and it takes a month, perhaps the person isn’t right for the job or (again) you did a poor job of estimating. In either case, your exposure is known, which is key in the early-going of any relationship.

At the end of the project, everyone evaluates how it went and decides whether or not to continue with another project. After several cycles, you have enough evidence to decide if you want to engage in a longer term relationship.

One important note on per-project: The payment should be heavily (if not entirely) back-weighted. That is to say, you pay when and if the work is delivered complete.

Just Remember

  • There are three typical structures for contract relationships: Hourly, monthly and per-project
  • Use per-project at the beginning of a relationship to properly align incentives
  • Move to monthly only after several successful projects

Your Assignment

Establish a profile on Upwork and do a search for a specific skillset you need on your team. For example, let’s say your application requires the integration of SMS for user notifications. Using the search capabilities on Upwork, see if you can find 3-5 developers with experience building web applications using the Twilio messaging API. Review the jobs the contractor has done in the past, and study how people described their project.

Take the next ten minutes and write up a simple project description that you might post on Upwork to hire a contractor. If you were to post it, how would you decide how much to pay?

If you struggle with the assignment, don’t sweat it. I’m going to be covering how you create projects for contractors in an upcoming post. Stay tuned!