Job ad

Developer job description template: a sample to copy and adapt (2026)

By the neodev team · 11 min read · Updated October 9, 2026

tensionscore is published by neodev, which also provides freelance developers. We say so up front so you can weigh our recommendations accordingly.

A developer job description that works has nine blocks: the job title, your company and product, the first six months, the stack, the team, the requirements, the pay range, location and remote policy, and the hiring process. Below you’ll find the fill-in template, three complete sample ads to adapt (full-stack, backend and DevOps, data) and the checklist to run before you post.

One trap first. In the US, “job description” often means the posting itself, but the internal document HR keeps (duties, reporting lines, classification) makes a poor ad: the ad has to give a developer who already has a job a reason to apply. And developers have options: the BLS projects employment of software developers, QA analysts and testers to grow 10% from 2025 to 2035, with about 106,100 openings a year.

Paste your job ad into tensionscore: in 30 seconds you get a tension score, the red flags, the estimated time-to-hire and a recommended pay range for the role. Free.

See my free diagnosis

The job description template, block by block

Keep the order and replace each sample line with your own. Lead with what the person will do, written to them (“you’ll ship…”), and only then list what you expect from them.

  • Job title: the role, the specialty and the main technology, in the words a developer actually types into a job board. Sample: “Full-Stack Developer, TypeScript (React/Node.js) – Denver, CO.”
  • Company and product, in two or three sentences: what you do, for whom, and where software fits in. Sample: “We build the scheduling software regional trucking companies use every day.”
  • Your first six months: two to four outcomes, with action verbs. It’s the block that makes people apply, and the one most ads leave out. Sample: “Ship the new carrier billing module.”
  • The stack you really use: three to five day-to-day technologies and an honest word on the code. Sample: “TypeScript, React, Node.js, Postgres; a 2019 codebase, partly in need of rework.”
  • The team: how many people, and who will review the new hire’s code. Sample: “Three developers; our cofounder reviews every pull request.”
  • Requirements, in two lists: must-haves (three or four checkable items) and nice-to-haves, at a level that matches the pay, with nothing that signals a preference based on age, sex, race, religion, national origin or disability. Sample: “Must-have: 3 years maintaining a production web application.”
  • Pay: a credible base-salary range (not “$90k–$150k DOE”) anchored on the market for the role, level and location, plus the main benefits. Sample: “$102,000–$132,000 base, plus health insurance and a 401(k) match.”
  • Location and remote policy: the city and the exact number of office days; “flexible” on its own says nothing. Sample: “Denver, CO, hybrid, 2 days a week in the office.”
  • Hiring process: the steps, the total length, your response time, and how and by when to apply. Sample: “30-minute call, 1-hour paired exercise, team meeting; we reply within 5 business days.”

What the ad must include, and what it can’t say

The EEOC states that it is illegal for an employer to publish a job ad that shows a preference for, or discourages someone from applying because of, race, color, religion, sex (including transgender status, sexual orientation and pregnancy), national origin, age (40 or older), disability or genetic information. Its own example fits tech hiring all too well: an ad seeking “recent college graduates” may discourage people over 40 from applying and may violate the law. Any test you require must also be necessary and job-related.

Pay disclosure depends on the state. In California, an employer with 15 or more employees must include the pay scale, a good faith estimate of the range it reasonably expects to pay, in any job posting, and the Labor Commissioner reads this as covering any position that may be filled in California, remote roles included. Colorado requires postings to disclose compensation, benefits, and how and when to apply. The state-by-state picture is in our guide on whether to show the salary in a developer job ad; all three samples below include a range.

Sample 1: full-stack developer at a small business

A Denver small business that builds its own software is hiring its fourth developer. In tensionscore’s US benchmarks, a mid-level full-stack developer earns about $102k to $132k base nationally, $128k to $165k in major tech hubs such as the Bay Area, New York or Seattle (about 25% higher), and $97k to $125k fully remote (about 5% lower). Denver is priced at the national level, and as a Colorado role, the ad lists benefits and an application deadline.

  • Title: Full-Stack Developer, TypeScript (React/Node.js) – Full-time – Denver, CO (hybrid)
  • About us: we’re a 40-person company that builds the route-scheduling software regional trucking companies use every day, in-house since 2019.
  • Your first six months: ship the new carrier billing module; rebuild the planning screen, our most used and slowest page; add tests around route calculation.
  • Our stack: TypeScript, React, Node.js and Postgres. Some of the code is clean and tested, some of it needs rework.
  • The team: three developers, including our cofounder, who reviews every pull request, plus two dispatchers who are our most demanding internal users.
  • Must-haves: at least 3 years building and maintaining a production web application in TypeScript; comfortable writing tests.
  • Nice-to-haves: experience with B2B software; you enjoy working full stack.
  • Pay: $102,000–$132,000 base salary, depending on experience, plus medical, dental and vision insurance and a 401(k) with a 4% match.
  • Location: Denver, CO, hybrid with 2 days a week in our office.
  • Hiring process: a 30-minute call, a 1-hour paired exercise on our real code (no take-home), then a half-day with the team. We reply within 5 business days at each step, about 3 weeks in total. Apply by [date] through the form below.

Sample 2: backend and DevOps engineer in New York

A small New York software company wants one person to own both its backend and its infrastructure. A hybrid profile is priced at its rarest skill, so this sample uses the mid-level DevOps benchmark: $115k to $146k nationally, $144k to $183k in New York, where the backend benchmark alone ($131k to $170k) would underprice the role. The on-call rotation is stated up front and paid: hidden, it would surface in the interview anyway.

  • Title: Backend & DevOps Engineer, Python (AWS, Terraform) – Full-time – New York, NY (hybrid)
  • About us: we build the engagement-letter software that accounting firms use every day. We’re 25 people, 6 of them in engineering.
  • Your first six months: move our manual deployments to a CI/CD pipeline; describe all of our infrastructure in Terraform; cut the response time of our e-signature API.
  • Our stack: Python (Django), a REST API, Postgres, Docker, Terraform, AWS, GitLab CI, Grafana.
  • The team: six developers; you’ll be the first person dedicated to infrastructure, working directly with our technical cofounder.
  • Must-haves: at least 3 years developing and running a Python application in production; hands-on Terraform or a similar tool.
  • Nice-to-haves: Kubernetes; experience at a B2B software company.
  • Pay: $144,000–$183,000 base salary, depending on experience, plus medical, dental and vision coverage; on-call one week in six, paid on top of salary.
  • Location: New York, NY (Manhattan), hybrid with 3 days a week in the office.
  • Hiring process: a 30-minute call, a 90-minute technical interview built around a real incident, then a meeting with the team. We reply within 5 business days; 3 to 4 weeks in total.

Sample 3: remote data engineer

A manufacturer wants to put its machine records to use and hires remotely, anywhere in the US. A mid-level data engineer earns about $110k to $145k base nationally in our benchmarks, so $105k to $138k fully remote, above standard development roles because the market is tighter. And since the role can be filled from California, the state’s pay scale rule applies as soon as the company has 15 or more employees.

  • Title: Data Engineer, Python/SQL (dbt, Airflow) – Full-time – Remote (US)
  • About us: we make industrial pumps (180 people, three plants in the Midwest). Our production records sit in our ERP and in spreadsheets.
  • Your first six months: set up ETL pipelines from the ERP and machine sensors; deliver a documented warehouse; publish the first three dashboards our plants are waiting for.
  • Our stack: Python, SQL, dbt, Airflow, BigQuery, Metabase; all code is versioned and reviewed.
  • The team: a four-person IT team; you’ll work weekly with plant operations and finance.
  • Must-haves: at least 3 years building and maintaining production data pipelines; strong SQL; Python every day.
  • Nice-to-haves: experience in manufacturing or with sensor data.
  • Pay: $105,000–$138,000 base salary, depending on experience, plus medical, dental and vision insurance, a 401(k) match and a home-office stipend.
  • Location: fully remote from anywhere in the US; one paid day per quarter at our main plant.
  • Hiring process: a 30-minute call, a 1-hour live SQL exercise over video, then a conversation with our VP of operations. We reply within 5 business days; about 3 weeks in total.

The mistakes that make good candidates skip your ad

The template already avoids most of them. Five common mistakes remain, each covered in depth in our other guides:

  • No pay range: a developer who already has a job won’t risk three interviews to find out the budget is too low, so they move on.
  • A catch-all stack: ten “required” technologies say you don’t know what you need. How to trim it is in our guide to writing a developer job ad that attracts candidates.
  • Experience that doesn’t match the pay: asking for a senior profile while posting a mid-level range drives both away.
  • Jargon: “fast-paced environment,” “wear many hats,” internal acronyms. Describe what the person will actually do.
  • An opaque process: with no steps and no response time, candidates pick the next posting. See why developers don’t reply to your job ads.

The checklist before you post

Reread your ad against this list, then run the test you can’t do yourself: paste the text into the free job ad analyzer. In 30 seconds it returns a tension score out of 10, the estimated time-to-hire, the true first-year cost, the red flags and a recommended pay range, computed by a deterministic engine from dated public benchmarks.

  • The title names the role, the specialty and the main technology.
  • The first six months are described with action verbs.
  • The stack lists only the technologies you really use, with an honest word on the code.
  • Requirements separate must-haves from nice-to-haves, at a level that matches the pay.
  • A base-salary range is posted, and you’ve checked its fully loaded cost with the developer cost calculator.
  • The city and the number of remote days are specific.
  • The hiring steps, your response time and how to apply are written down.
  • Nothing signals a preference based on age, sex, race, religion, national origin or disability (no “recent grads,” no “young team”).

Key takeaways

  • A developer job description that works follows nine blocks: title, company, first six months, stack, team, requirements, pay, location and remote policy, hiring process.
  • A job ad isn’t the internal job description: lead with what the person will do, written to them, and list requirements afterward.
  • Take the range from benchmarks, not from your budget: a mid-level full-stack developer earns about $102k to $132k base nationally, $128k to $165k in major tech hubs and $97k to $125k fully remote; a hybrid profile is priced at its rarest skill.
  • Federal law bars ad language that signals a preference based on protected traits (the EEOC cites “recent college graduates”), and states such as California and Colorado require pay information in the posting itself.

Frequently asked questions

What’s the difference between a job description and a job ad?

The internal job description is an HR document: duties, reporting lines, classification, qualifications. The job ad is a recruiting text for a developer who probably already has a job. Use the first to get the facts right, then write the second for the candidate, starting with what they’ll do in their first six months.

Do I have to include a salary range in a developer job posting?

It depends on where the role can be filled. California requires a pay scale in every posting from employers with 15 or more employees, remote roles that may be filled in California included, and Colorado requires postings to disclose compensation, benefits, and how and when to apply. Several other states have similar laws, and even where none applies, a credible range brings better-matched applications.

Can a job ad ask for “recent graduates” or a “young team” fit?

Avoid it. The EEOC says an ad that shows a preference based on age (40 or older), among other protected traits, is illegal, and cites an ad seeking “recent college graduates” as wording that may discourage older applicants and violate the law. Describe the work and the skills instead.

How do I know if my job ad is good before posting it?

Run the checklist in this guide, then paste the text into the free tensionscore analyzer: it flags red flags (missing salary, catch-all stack, excessive experience requirements, urgency without a frame), estimates the time-to-hire and the first-year cost, and recommends a pay range for the role, level and location it detects.

Paste your developer job ad: score, real time-to-hire, first-year cost and what’s driving candidates away — free, in 30 seconds.

See my free diagnosis

Sources

2026 salary benchmarks by role

Frontend developerBackend developerFull-stack developerMobile developerDevOps engineerData engineerTech leadQA engineerProduct designerProduct manager

Read next