How to write a UK IT contractor CV as a software developer
· 8 min readA UK contractor CV lists each contract as its own entry, headed by the end client, with your title marked "(contract)" and the dates in months. Name your limited company once, above the contracts. Show renewals next to the dates, put your availability and key stack at the top, and expect it to run to two or three pages.
This guide is for software developers who contract in the UK through their own limited company, an umbrella company or an agency. It covers the layout, the awkward cases the generic guides skip, and the changes to make when you apply for a permanent role.
How to list contracts: by client or under your limited company
If you contract through a limited company, that company is legally your employer, but the reader is not interested in it. A recruiter or hiring manager wants to know which organizations you worked for, in what domain, on what stack, and for how long. So the client name should lead each entry.
Our recommendation is one line that states the arrangement, followed by one entry per client:
Contract work via Harwell Digital Ltd | Apr 2020 – Present
Thamesbridge Bank, London (hybrid)
Senior Backend Developer (contract) | Jan 2024 – Present
- Built the payment status service in Kotlin and Spring Boot that replaced overnight file checks with Kafka events, used by 4 product teams
- Moved the team's deployments from Jenkins to GitHub Actions and Terraform on AWS
Kerrow Insurance, Bristol (remote)
Backend Developer (contract) | Mar 2022 – Dec 2023
- Rewrote the quote pricing API in Java 17, reducing p95 response time from 1.8 s to 400 ms
Some contractor guides suggest the opposite: the limited company as the employer and each client as an "assignment" under it. That is accurate. The cost is that the client names, which are the most useful information on the page, move to a second level where they are easier to miss.
If you work through an umbrella company or are paid by the agency through PAYE, leave out the arrangement line. Head each entry with the client and keep "(contract)" on the title. Permanent jobs from before you started contracting go in the same list, in date order, below the contracts and without the label.
Put "(contract)" after every contract title. It tells a reader why the entries are shorter than permanent jobs before they start counting months.
How to show contract renewals and extensions
Write the renewals next to the dates. A contract that the client renewed several times is evidence that your work was worth paying for again, and the reader cannot see it unless you say so.
Before:
Thamesbridge Bank, London (hybrid)
Senior Backend Developer (contract) | Jan 2024 – Present
After:
Thamesbridge Bank, London (hybrid)
Senior Backend Developer (contract) | Jan 2024 – Present (initial 6-month contract, renewed 5 times)
Count only renewals that happened. An extension that has been offered but not signed is not a renewal yet.
If the scope grew during the contract, say that in a bullet instead of adding a second title. A client cannot promote you, but it can give you more work. "Took over payments reconciliation after the second renewal, leading two permanent engineers" shows what a promotion would, without claiming a title you did not have.
When you return to a client after a break, list each period as a separate entry with its own dates. Do not merge them into one span that hides the months in between.
How to group short contracts so they do not look like job hopping
Give a full entry to every contract that lasted about six months or more. Put shorter contracts together in one block with a single line each: client, role, months, stack and one result.
Short contracts | Apr 2020 – Jun 2021
- Northgate Retail, Leeds (remote): Frontend Developer (contract), Apr 2020 – Jul 2020. Moved the checkout from server-rendered PHP pages to Next.js while the stores were closed
- Lumen Health, London (remote): Backend Developer (contract), Sep 2020 – Jan 2021. Built the FHIR integration between the booking app and two NHS trust systems
- Carden Logistics, Manchester (remote): Java Developer (contract), Mar 2021 – Jun 2021. Migrated route planning jobs from on-premises cron servers to AWS Batch
A run of three- and four-month contracts is ordinary in UK contracting. The problem is visual: six entries of four bullets each make the CV long and give every contract the same weight. The block shows every date and leaves the space for your two or three most relevant contracts.
Do not combine different clients under one invented employer such as "Various clients" with a single bullet list. The reader cannot tell what you did where, and a reference or background check may ask about each client separately.
Agency or end client: which name to use
Use the end client's name. The agency placed you, but the work was done for the client, and the client is what the reader is trying to assess. You can add the agency in brackets if you want a record of it, for example "Thamesbridge Bank (via Corran Recruitment)", but it is optional.
The exception is confidentiality. Some contracts include a clause that limits how you may name or describe the client, and they are more common where the client is a bank or a public body. Read your contract first. If you cannot name the client, describe it without the name:
Before:
Confidential client, London
Backend Developer (contract) | Jul 2021 – Feb 2022
After:
UK retail bank, London
Backend Developer (contract) | Jul 2021 – Feb 2022
The second version gives the reader the industry and the location, which is most of what the client's name would tell them. Be careful with extra detail. "Bank with a head office in Edinburgh and 20 million customers" identifies the client as clearly as its name does. Apply the same care to bullets: internal system names, project code names and unreleased products do not belong on a CV.
How long a contractor CV should be and what goes at the top
Two to three pages is normal for an experienced UK contractor, and longer is common for long contracting careers. That is the main exception to the two-page norm in how long a software engineer resume should be, because ten years of contracting can mean fifteen clients or more. Keep the detail on the last five or six years and reduce older contracts to one line each.
The top of page one matters most. Agents search job boards and their own databases by stack, and they often need to know about availability before anything else. The header and profile should answer what you do, with which stack, when you can start, and whether you can work in the UK without sponsorship.
Senior Backend Developer | Kotlin, Java, Spring Boot, Kafka, AWS
Available from 1 Dec 2026 | Hybrid in London or fully remote
Full UK right to work
Backend developer with 10 years of experience, the last six as a contractor in banking and insurance. Builds event-driven services in Kotlin and Java on AWS, and has delivered changes through the release and audit processes of a UK bank.
If a role requires security clearance, add the level and its status on the header line, for example "SC clearance (active)". A clearance that has lapsed can still be worth listing with its end date, such as "SC clearance (lapsed Mar 2025)", because you can then discuss whether it can be renewed. GOV.UK lists the levels under United Kingdom Security Vetting: clearance levels.
A grouped skills section below the profile helps agents who scan for keywords. The senior backend engineer example splits its skills into groups such as databases, cloud, and testing and monitoring, which is a layout that also suits a long contractor CV. Give each full contract entry a short stack line too, so a reader looking for Kafka can see which contract used it and when. Our post on where to put your tech stack covers the options.
Expect agencies to ask for a Word file, and expect them to reformat it before the client sees it, often removing your contact details. Simple headings and plain bullets survive that process. Columns, text boxes and skill bars often do not.
What to leave off a contractor CV
Leave these out of the CV itself:
- Day rate. Discuss it with the agent, who will match it against the client's budget.
- IR35 status of past contracts. It describes the contract arrangement, not your work. More on this in the questions below.
- Personal details. Common UK practice is no photo, date of birth or marital status. Your city, phone number, email and LinkedIn or GitHub profile are enough.
- "Present" on a contract that has ended. Agents will assume you are still working there and have a notice period.
How to turn a contractor CV into a permanent one
Keep a second version for permanent applications. Six contracts in five years can look like instability to someone who has only hired employees.
Four changes do most of the job:
- Merge back-to-back contracts at the same client. If you moved between teams at one bank, or the client changed the agency on your renewal, the contractor version may show two entries. The permanent version should show one entry with the total span.
- Remove contracting language. "Engaged to", "assignment" and "workstream for the client" describe a supplier. Write the bullets as you would for any job: what you built and what changed.
- Shorten to two pages. Two pages is the usual UK length for a permanent role. Drop the oldest short contracts or reduce them to one line.
- Add one sentence to the profile that names what you want next, for example owning a payments platform over several years, which a six-month contract does not allow.
Before:
Thamesbridge Bank, London (hybrid)
Senior Backend Developer (contract) | Jan 2024 – Present (initial 6-month contract, renewed 5 times)
- Engaged to deliver the payment status workstream for the client's Payments Platform program
After:
Thamesbridge Bank, London (hybrid)
Senior Backend Developer (contract) | Jan 2024 – Present (renewed 5 times)
- Built the payment status service in Kotlin and Spring Boot that replaced overnight file checks with Kafka events, used by 4 product teams
Keep "(contract)" in the titles. It is the label that explains the short tenures, and the dates would show it anyway. For a sense of what this reader is used to, the tech lead example shows a permanent history of three employers, each held for three years or more, with the scope growing from one role to the next.
Put it into practice
Build your resume in Filiz and watch the PDF update as you edit. Start from scratch, import your current resume, or begin with an example. No sign-up needed to try it.
Frequently asked questions
Should my limited company name be on my CV?
Yes, on one line above your contracts, such as "Contract work via Harwell Digital Ltd". It makes the arrangement clear and matches what a background check will find. Do not use the company as the job title or repeat it in every entry. Umbrella and agency PAYE contractors can leave the line out.
How do I explain gaps between contracts?
On the CV, you usually do not. Gaps of a few weeks or months between contracts are expected in UK contracting, and readers in this market know it. For a gap of six months or more, list anything checkable you did, such as a certification or merged open source work, and give the reason in one sentence when an agent asks.
How long should a contractor CV be?
Two to three pages for an experienced contractor, and more for a long contracting career. The length is acceptable because agents want recent contracts in detail. It is not acceptable for a permanent application, where two pages is the UK norm.
Should I mention inside or outside IR35 on my CV?
No. GOV.UK says the rules apply contract by contract and that in most cases the client decides the status. For a small private-sector client, your own company decides. See Understanding off-payroll working (IR35). Tell the agent which contracts you will consider, and take tax advice from an accountant.
Should I put my day rate on my CV?
No. A rate above a client's budget can get your CV rejected before anyone reads it, even when the client would have paid it for the right person. A rate below the budget lowers your offer. Give the number to the agent once you know the role and its budget.