Writing a GTM engineer job description

A good GTM engineer job description states the mandate in its first paragraph: the capability domains the role owns, which one leads, and what the hire is expected to change in year one. The rest of the document explains that mandate. Candidates can then compare their experience and interests with the actual job before applying.

The JD is the mandate, translated

The job description is downstream of a decision, and it can't substitute for it. Define the domain mix first (where the business is, what must change next, what the hire inherits) and the JD becomes a translation exercise: the same spec, written to be read by a candidate instead of a hiring committee.

Translation still takes craft. A candidate needs to understand what they would own, the current state of the systems, and what they could learn in the role. A generic responsibilities list leaves those questions open. The mandate gives each one a concrete answer.

To check whether your draft states its mandate, read it next to a few GTM engineering roles other companies are hiring for. If your JD would fit any of those companies equally well, the mandate is not on the page yet.

Keyword soup: the classic failure

The failure mode is easy to recognize once named: a JD that lists every GTM tool the team has heard of and every domain the taxonomy names, as if breadth of vocabulary were breadth of thought. Clay, HubSpot, Salesforce, n8n, Python, "AI-native," outbound, RevOps, analytics, enablement. The list names many possible jobs without telling a candidate which one the company is hiring for.

A broad keyword list produces broad matches. It also leaves candidates to guess which systems they would own and how the team will set priorities. Replace that list with the lead domain, its supporting domains, and the outcomes the hire will be responsible for.

What should a GTM engineer job description include?

Six sections, annotated. This is a skeleton to write against, not boilerplate to paste.

  1. 01

    The mandate paragraph

    Open with what this person owns: the lead domain, the supporting domains, and why the role exists now. Write this paragraph last, after the rest of the JD has made the scope concrete.

  2. 02

    What they inherit

    Describe the stack as it actually is: which systems run today, which are half-built, and what is known to be broken. Candidates can then judge whether the starting point matches the work they want to do.

  3. 03

    Year-one outcomes

    Name a short set of results as changes in the business: outbound running without manual list work, or reporting the leadership team trusts. Outcomes let the candidate judge the scope and feasibility of the mandate.

  4. 04

    Domain boundaries

    Name what the role does not own. If enablement, paid acquisition, or the data warehouse belong to someone else, say so. Both sides can then evaluate the same boundary during the hiring process.

  5. 05

    Approach and stack

    State the build approach the role requires (no-code automation, AI-assisted, AI engineering, custom code) and separate tools they must know from tools they can learn on the job. Require exact-stack experience only where the mandate makes it necessary.

  6. 06

    What to leave out

    Years-in-title requirements (the title is too young for them), generic competencies, and any tool list longer than the systems the role will actually touch. Cutting those leaves more room for the parts that matter.

Titles, seniority, and the comp line

"GTM Engineer" is the consolidating title and usually the right one to post under; the mandate paragraph does the differentiating work the title can't. Seniority belongs in the outcomes: a role that expects self-directed system design in quarter one is senior whatever the title says. The compensation range should reflect that scope.

On compensation, benchmark against the mandate rather than the title. Salary data pulled from every posting that says "GTM engineer" mixes jobs with different domain mixes and build approaches. Price the role you defined, in your market, for the approach you require.

Frequently asked questions

What should a GTM engineer job description include?

Include a mandate paragraph, the systems the hire inherits, year-one outcomes, domain boundaries, and the required build approach with a short tool list. Remove filler such as years-in-title requirements that do not help a candidate judge the work.

What's wrong with listing all our tools in the JD?

A long tool list creates broad keyword matches without defining the work. List the systems the role will own and distinguish required experience from tools the hire can learn. Use the mandate paragraph to explain how those systems fit together.

What title should we use for a GTM engineering role?

"GTM Engineer" is the clearest title for this mandate today, though similar work still appears as growth engineer, RevOps engineer, or sales automation manager. Use the mandate paragraph to explain the domain mix and outcomes that the title cannot carry on its own.

Should we put a salary range in the JD?

Yes. A visible range lets candidates decide whether the role is viable before either side spends time on interviews. Set the range from the mandate and your local market; title-only comparisons mix jobs with different domain ownership and build approaches.