I am a...
Learn more
How it worksPricingFAQ
Account
May 17, 2026 · 10 min read · Cadence Editorial

How to write a contractor agreement for engineers

contractor agreement engineers — How to write a contractor agreement for engineers
Photo by [www.kaboompics.com](https://www.pexels.com/@karola-g) on [Pexels](https://www.pexels.com/photo/person-signing-a-contract-7875831/)

How to write a contractor agreement for engineers

A contractor agreement for engineers is a written contract that defines scope, payment, IP assignment, confidentiality, contractor status, and termination terms before any code ships. The non-negotiable clauses in 2026 are nine: scope, deliverables and acceptance, payment and rails, IP assignment with a work-for-hire backstop, AI-output ownership, confidentiality, contractor status, termination and replacement, and governing law. Anything else is decoration.

Most templates you'll find on PandaDoc, Bonsai, or Business-in-a-Box hit seven of those nine. Two are missing because the templates were written before AI tooling and weekly billing became table stakes. This post covers all nine, with sample language for the two new ones and an honest comparison of when to write your own vs use an EOR vs book through a marketplace.

The 9 clauses every engineer contract needs in 2026

Every modern engineer contract has the same skeleton. If you're staring at a blank document, write these nine headings first and fill in the rest after.

  1. Scope of work. Reference a spec doc, Linear ticket, or Notion page, not vague prose. "Build the billing dashboard per the spec at notion.so/billing-v3" beats "develop billing functionality."
  2. Deliverables and acceptance. What ships, when, and how you sign off. A 14-day acceptance window with a "deemed accepted if not rejected" clause is industry standard.
  3. Payment terms. Currency, rail, schedule, late-payment interest. Weekly is the new monthly for short engagements.
  4. IP assignment with work-for-hire backstop. Both. Not one or the other. We'll explain why below.
  5. AI-output ownership. New in 2026. Code generated by Cursor, Claude Code, or Copilot is still authored by the engineer, so you need explicit assignment of AI outputs and prompt logs.
  6. Confidentiality and data handling. Classification tiers (public, internal, confidential, regulated) beat a single NDA blob.
  7. Contractor status. Explicit language that the engineer is an independent contractor, sets their own hours, uses their own equipment, and is responsible for their own taxes.
  8. Termination, cure period, and replacement. Standard templates default to 14 to 30 days notice. For weekly engagements, write a no-notice clause.
  9. Governing law and dispute venue. Pick a jurisdiction both parties can defend in. Delaware and California are common for US-based clients.

Skip any of these and you have a wish list, not a contract.

Why the standard PandaDoc template breaks for short engagements

The big template repos (PandaDoc, Bonsai, Business-in-a-Box, eSign.com) all assume one engagement, one multi-month timeline, milestone billing, and a single deliverable signed off at the end. Their templates run 1,200 to 1,400 words and read like a software-build contract from 2014.

That structure breaks down the moment you want to ship continuously.

If the engineer's scope shifts every week (which it does on every real project), you're either re-papering the contract per change order or pretending the new work was always in scope. The first is operationally insane. The second invalidates your acceptance and IP language.

The fix is to move scope and deliverables out of the contract body and into a referenced artifact. Your contract says "scope is defined by the active spec in {URL}, updated weekly." Your spec doc carries the actual work. Now you can ship and change scope without touching the contract.

This is the pattern most successful in-house teams already use. It's also the pattern every modern engineering team collaboration tools 2026 stack is built around: Linear holds the tickets, Notion holds the spec, the contract just points at both.

The AI-output ownership clause everyone is missing

Here's the gap in every off-the-shelf template: they assume the engineer is the sole author of the code. In 2026, that assumption is wrong.

Most production code now passes through Cursor, Claude Code, or GitHub Copilot before it's committed. Legally, the engineer is still the author (the AI tool is treated as an instrument, like a compiler), but the contract should make ownership explicit. Otherwise you have a copyright trail that includes "and the output of {model version} on {date}, configured with these prompts," which nobody wants to litigate.

Sample language you can paste in:

"Contractor agrees that all outputs of AI tools (including but not limited to large language models, code assistants, and image generators) used in service of the work product are part of the Deliverables and are assigned to Client under the IP assignment clause above. Contractor will retain prompt logs, model versions, and tool configurations for the duration of the engagement plus 12 months, and will provide them to Client on request."

Two things this clause does. First, it pulls AI outputs into your existing IP assignment so you don't need a separate transfer. Second, it requires prompt-log retention, which matters because your prompts can be trade secrets you want to keep and audit.

Every engineer on Cadence is AI-native by default, vetted on Cursor, Claude Code, and Copilot fluency before they unlock bookings, so the master agreement we use includes this clause out of the box. If you're writing your own, copy the language above.

Payment rails: USD, USDC, Wise, Deel

The amount matters less than the rail. A $1,500 weekly invoice paid via SWIFT wire costs the engineer $40 in fees and arrives in 4 to 7 days. The same $1,500 paid via Wise costs under $10 and arrives same-day.

Specify the rail in the contract. The default templates leave this as "payment shall be made by check or wire transfer," which is useless if your engineer banks in Buenos Aires or Lagos.

RailBest forCostSpeed
WiseOne contractor, USD to local currency0.33% to 1% FXSame-day to next-day
Deel5+ contractors, compliance bundled$49 per contractor per month + 0.5% FX1 to 3 days
USDC (Coinbase, Crossmint)Under-banked regions, instant settlementNetwork gas onlyMinutes
SWIFT wireLegacy clients, large amounts$25 to $50 flat2 to 5 days

For the operational details of these rails, our breakdown of how Wise, Deel, and Stripe Connect compare goes deeper on volume tiers and FX spreads.

Pair the rail with a payment date. Friday weekly is the cleanest default: the engineer ships Monday to Friday, you approve the work end of day Friday, the payment goes out the following Friday. Cadence pays engineers Friday on Wise, Deel, or USDC, and that's part of why our 12,800-engineer pool stays active.

DIY contract vs EOR vs marketplace booking

Three operational paths. They all produce a signed contract. They differ on setup time, paperwork load, weekly cost, and how fast you can replace an engineer who isn't working out.

ApproachSetup timePer-engineer paperworkWeekly cost (mid-level)Replacement speedBest for
DIY contract + lawyer5 to 10 days1 contract per engineerEngineer rate + $200 to $400 review2 to 4 weeksOne engineer, one project, one year
EOR (Deel, Remote, Multiplier)3 to 7 days1 contract per engineer (managed)$1,000 to $2,000 + EOR fee ($49 to $599)1 to 2 weeks5+ engineers, compliance-heavy regions
Cadence marketplace2 minutes1 master, all bookings$500 to $2,000Next week, no noticeFounders shipping every week

Be honest about where DIY wins. If you're hiring one senior engineer to architect a system over six months and IP risk is high, a custom contract drafted by your lawyer is the right call. You'll spend $800 to $2,000 in legal fees and have a document tuned to your exact situation.

EOR wins when you need compliance you can't get yourself. Hiring in Germany, France, or Brazil without an entity is the textbook case. Deel and Remote handle local labor law, tax filing, and benefits.

Marketplace wins on operational speed. The trade-off is you give up bespoke contract terms in exchange for a pre-signed master, weekly billing, daily ratings, and no-notice replacement. For founders shipping every week, that trade is usually worth it. For a six-month architecture engagement, it usually isn't.

What to actually write: clause-by-clause sample language

Here's drop-in language for the four clauses most templates get wrong or skip. Paste these into your favorite template and you'll cover 80% of the gaps.

IP assignment (works AND assignment):

"All work product, including but not limited to source code, documentation, designs, and AI-generated outputs, is created as a work made for hire under 17 U.S.C. § 101. To the extent any portion does not qualify as work made for hire, Contractor hereby irrevocably assigns to Client all right, title, and interest in such work product, including all copyrights, patents, trade secrets, and moral rights."

The "to the extent any portion does not qualify" language is the backstop. Without it, courts have repeatedly held that software code outside the nine statutory categories reverts to the contractor.

AI output ownership: See sample language in the section above. Paste verbatim.

Weekly cancellation:

"Either party may terminate this Agreement at the end of any weekly billing cycle by providing written notice prior to the start of the next cycle. Termination is effective immediately upon notice, and Client owes only fees for work completed through the termination date."

This replaces the standard 14-to-30-day notice clause with a one-week-at-a-time pattern. If you want the flexibility, you have to write it in.

Replacement and daily ratings:

"Client may rate Contractor's work product on a daily basis using a 1-to-5 scale. Two consecutive days at a rating of 2 or below constitute material breach. Client may terminate immediately for material breach, without cure period."

This is the contractual version of what Cadence does operationally. We hit a 27-hour median time to first commit and use daily ratings to drive auto-replacement before founders ever have to ask. If you're writing your own contract, the language above is the closest you can get to that pattern without a marketplace behind it.

For more on the operational rituals that make this kind of contract enforceable (status updates, written specs, async signoff), see our guide on async communication for engineering teams in 2026.

What to do next

Pick your path based on volume.

Hiring one engineer for one project. Download a template from PandaDoc or eSign.com, add the AI output clause and the IP assignment backstop from this post, and pay a lawyer $200 to $400 for a one-hour review. Total time investment: a day. Total cost: under $500 if you're not in a regulated industry.

Hiring 3+ engineers per quarter. Switch to an EOR like Deel or Remote, or set up a remote engineering team setup checklist for 2026 and run one master agreement through your lawyer. The per-engineer paperwork drops, the compliance gets handled, and you stop redlining the same five clauses every week.

Shipping continuously, replacing engineers as needs change. Use a marketplace with a pre-signed master agreement built in. Cadence's master covers all nine clauses including AI output ownership, runs on a 48-hour free trial, and lets you book a junior at $500, mid at $1,000, senior at $1,500, or lead at $2,000 per week. If the engineer isn't a fit, replace them next week, no notice required, and you never re-paper a contract. Find your remote engineer in 2 minutes if that pattern fits.

The right answer depends on your shipping cadence, not your contract sophistication. Pick the tool that matches how often you actually change engineers.

Hiring engineers every week instead of every year? Cadence ships a pre-signed master that covers all nine clauses (AI output, weekly cancellation, replacement included), so you book and unbook engineers without touching legal. Try the 48-hour free trial.

FAQ

Is a contractor agreement legally required to hire an engineer?

In the US it is not statutorily required, but without one you have no enforceable IP assignment, no confidentiality protection, and no defense against misclassification. Always sign one, even for a two-week engagement.

Does work-for-hire language alone protect my IP?

No. Most software code falls outside the nine statutory work-for-hire categories under 17 U.S.C. § 101. You need an explicit assignment clause as a backstop, written as "to the extent any portion does not qualify as work made for hire, Contractor hereby irrevocably assigns..."

Who owns code generated by Cursor or Claude Code?

The engineer is the legal author of AI-assisted output (the tool is treated as an instrument, like a compiler). Your contract should explicitly assign all AI-tool outputs as part of the deliverable, and require prompt-log retention for at least 12 months after the engagement ends.

Can I terminate an engineer contract without notice?

Only if the contract says so. Standard templates require 14 to 30 days notice as default. Add the weekly-cancellation clause from this post if you want the flexibility, or use a marketplace where no-notice termination is the contractual default.

What happens if I misclassify an engineer as a contractor?

In the US, the Department of Labor can claw back overtime, payroll tax, and benefits liabilities under the Fair Labor Standards Act. In 2026, regulators weigh actual working conditions over contract language, so behave like a client (set outcomes, not hours) rather than a manager (set hours and supervise).

All posts