Abre una oferta de GTM Engineer y lee los requisitos: SQL, Python, APIs, n8n, saber meter un LLM dentro de un flujo de datos. Parece un puesto de backend. Ahora mira el departamento: ventas.
Casi ningún developer tiene ese título en el radar. Lo buscan equipos comerciales que se han dado cuenta de algo incómodo: su embudo ya no es un equipo de personas con hojas de cálculo. Es software. Y el software que nadie diseña se rompe.
Según el análisis de Bloomberry que veremos más abajo, la mayoría de quienes ocupan hoy ese puesto vienen de ventas (SDR/BDR) y el perfil técnico es el más raro. Saben de embudos, no de reintentos ni de rate limits. Tú tienes justo lo que les falta.
En corto: un GTM Engineer construye el sistema que encuentra, enriquece y puntúa clientes potenciales: pipelines de datos cuyo output son reuniones de venta. Las ofertas piden SQL o Python en un 38% de los casos y n8n en un 28%, según el análisis de Bloomberry sobre unas 1.000 ofertas. Un developer con IA y automatización ya tiene la mitad técnica del perfil; lo que le falta es entender por qué una empresa compra.
¿Qué es un GTM Engineer?
Un GTM Engineer es el perfil técnico que convierte el trabajo comercial manual (buscar empresas, completar datos, decidir a quién escribir) en un sistema automatizado de datos, APIs e IA.
GTM viene de go-to-market: todo lo que hace una empresa para llegar al cliente y venderle. Clay, la herramienta que más se asocia al rol, define la disciplina en su guía de GTM engineering (abril de 2026) como "the practice of building automated revenue systems using AI, data enrichment, and workflow automation".
Clay vende la herramienta del rol, así que léelo con cautela. Pero la definición es correcta.
Qué hace un GTM Engineer en el día a día
Un GTM Engineer reparte la semana entre cinco trabajos:
- Señales: detectar que una empresa contrata, levanta ronda o cambia de stack.
- Enriquecer: completar datos preguntando a varios proveedores en cascada.
- Puntuar: decidir con un LLM si la empresa encaja.
- Orquestar: conectar CRM, Slack y webhooks con n8n o Zapier.
- Higiene: duplicados, rebotes y entregabilidad.
Quita el vocabulario comercial y queda lo de siempre: colas, APIs con límites, reintentos y deduplicación.
Qué piden las ofertas de GTM Engineer: los datos y su letra pequeña
Las ofertas de GTM Engineer piden sobre todo herramientas de automatización (Zapier en el 39%, n8n en el 28%) y, en algo más de un tercio, SQL o Python (38% cada uno).
El análisis más citado es el de Henley Wing Chiu en Bloomberry: unas 1.000 ofertas de GTM Engineer, publicado el 3 de octubre de 2025 y actualizado el 25 de enero de 2026.
| Dato | Cifra | Letra pequeña |
|---|---|---|
| Ofertas que piden SQL | 38% | Python, también 38%. La mayoría no exige programar |
| Ofertas que citan n8n | 28% | Zapier aparece en el 39% |
| Herramienta más popular del rol | Clay | Sin porcentaje en ofertas; aparece en más del 90% de los perfiles de GTM Engineer analizados |
| Salario en ofertas con rango público | 127.500 USD/año | El cuerpo lo llama mediana y el encabezado, media. Sobre todo EE. UU. |
| Crecimiento de ofertas 2024→2025 | +205% | Suma GTM Engineer y RevOps, enero-septiembre de cada año |
Esa última fila es la que más se cita mal. La metodología de Bloomberry dice textualmente que compara GTM Engineers y RevOps combinados. Medio internet repite el 205% como si fuera solo GTM Engineer.
Casi todo lo que se publica sobre el rol viene de quien vende herramientas para él. Lee las cifras como dirección, no como promesa. Y el 38% dice algo útil: la mayoría no te pide ser ingeniero de software, pero las ofertas que sí lo piden son las que mejor encajan contigo.
GTM Engineer vs RevOps, SDR y developer clásico
La diferencia entre un GTM Engineer y RevOps es quién construye y quién gobierna: RevOps mantiene el proceso, el CRM y los informes; el GTM Engineer construye sistemas nuevos que traen datos de fuera.
| SDR | RevOps | GTM Engineer | Developer clásico | |
|---|---|---|---|---|
| Qué produce | Conversaciones y reuniones | Procesos, CRM limpio, informes | Sistemas que generan pipeline | Producto y features |
| Herramienta central | Secuenciador, LinkedIn | CRM | Clay, n8n, APIs, LLM | Repo, CI/CD |
| Cómo se mide | Reuniones agendadas | Calidad del dato, previsión | Reuniones conseguidas por el sistema | Entregas, incidencias |
| Código | No | Poco | Variable: de no-code a Python | Siempre |
| Limitación o riesgo | No escala | Se queda en mantenimiento | El título está inflado: muchas ofertas son operaciones con otro nombre | No conoce el embudo |
La frontera no está clara ni para quien trabaja en ello. En este hilo de la comunidad RevGenius (abril de 2026), una usuaria plantea que los dos puestos ya se han fundido en responsabilidades y resultados. Otro participante le responde que GTM Engineer es RevOps con otro nombre, más carga y menos sueldo. En Hacker News el escepticismo es más seco: en un comentario de agosto de 2026, un usuario cuenta que acaba de descubrir el término y que le suena a que, si usas Claude Code para X, ya puedes llamarlo X engineering.
Mi lectura: el título está inflado, pero el trabajo que hay debajo, cuando la oferta pide código, es real.
Por qué un developer con IA puede ocupar el hueco del GTM Engineer
Un developer puede ocupar el puesto de GTM Engineer porque lo que se rompe en estos sistemas a escala es exactamente lo que un developer sabe arreglar.
Un flujo no-code funciona con 200 filas. Con 20.000 aparecen duplicados, límites de API, reintentos que disparan el gasto y un LLM que inventa datos. Idempotencia, errores, coste por llamada y tests: eso no se aprende en un curso de ventas.
Me pasó sin buscarlo. Para el lanzamiento de un workshop monté dos piezas encima de MailerLite: un panel que mide cada hora cuánta gente hay en cada paso del embudo (ebook, webinar, lista de espera, reto) y un script que sube los correos como borradores con los enlaces ya etiquetados. Un cron, una API con límites y un JSON. En otra empresa, eso es trabajo de GTM Engineer.
Si ya montas agentes y flujos en n8n, el salto es corto. Lo que llevas tiempo practicando en Agentic Engineering o en la ruta de dev a AI Engineer es la mitad técnica del perfil.
Un lead scoring con LLM que puedes montar hoy
El corazón del rol, sin pagar ninguna herramienta: una lista de dominios, el LLM lee cada web y la puntúa contra tu cliente ideal. Con Bun, el SDK de Anthropic y Zod para no fiarte del JSON que devuelve el modelo:
// score-leads.ts — bun add @anthropic-ai/sdk zod
// bun run score-leads.ts leads.txt (un dominio por línea)
import Anthropic from "@anthropic-ai/sdk";
import { z } from "zod";
const ICP = `Vendemos formación en IA para equipos de desarrollo.
Encaja: empresa de software de 20 a 500 personas que esté contratando developers.`;
const Score = z.object({
fit: z.number().int().min(0).max(10),
reason: z.string(),
hook: z.string(), // vacío si la web no da nada concreto
});
const client = new Anthropic(); // lee ANTHROPIC_API_KEY
const model = process.env.MODEL ?? "claude-haiku-5-5";
const domains = (await Bun.file(Bun.argv[2] ?? "leads.txt").text())
.split("\n").map((l) => l.trim()).filter(Boolean);
async function pageText(domain: string): Promise<string> {
const res = await fetch(`https://${domain}`, { signal: AbortSignal.timeout(10_000) });
if (!res.ok) throw new Error(`HTTP ${res.status}`);
return (await res.text())
.replace(/<script[\s\S]*?<\/script>|<style[\s\S]*?<\/style>/g, "")
.replace(/<[^>]+>/g, " ").replace(/\s+/g, " ").slice(0, 6000);
}
const rows = [];
for (const domain of [...new Set(domains)]) {
try {
const msg = await client.messages.create({
model, max_tokens: 2000,
messages: [{ role: "user", content:
`Cliente ideal:\n${ICP}\n\nTexto de la web de ${domain}:\n${await pageText(domain)}\n\n` +
`Responde SOLO con JSON: {"fit": 0-10, "reason": "por qué", ` +
`"hook": "algo concreto de SU web, o cadena vacía si no hay nada"}` }],
});
const raw = msg.content.find((b) => b.type === "text")?.text ?? "{}";
const parsed = Score.parse(JSON.parse(raw.slice(raw.indexOf("{"), raw.lastIndexOf("}") + 1)));
rows.push({ domain, ...parsed });
} catch (e) {
rows.push({ domain, fit: -1, reason: `error: ${(e as Error).message.split("\n")[0]}`, hook: "" });
}
}
rows.sort((a, b) => b.fit - a.fit);
console.table(rows);
await Bun.write("scored.json", JSON.stringify(rows, null, 2));
El modelo por defecto es Haiku porque la documentación de Anthropic lo recomienda para clasificación de alto volumen; cámbialo con la variable MODEL.
Fíjate en dos detalles. El hook se pide de su web, y si no hay nada, vacío: así el LLM no inventa el dato que delata un email automatizado. Y el Score.parse convierte un JSON mal formado en un error controlado, no en una fila corrupta en tu CRM. Validar con schemas cualquier dato que no controlas, como la salida de un LLM, es la base del curso de Zod.
Cuando funcione con 20 dominios, pásalo a n8n. La edición community es gratuita y self-hosted; si no la tienes, aquí explicamos cómo levantar n8n en local con Docker:
- Schedule Trigger: cada lunes a las 8:00.
- Google Sheets: lee los dominios nuevos.
- HTTP Request: descarga la web.
- Basic LLM Chain (con el modelo de Anthropic): el mismo prompt, con salida JSON.
- IF:
fit >= 7. - CRM (HubSpot o el tuyo): crea o actualiza la empresa con
reasonyhook. - Slack: te avisa con los cinco mejores del día.
El paso 8 no existe a propósito: el email lo manda una persona. En Hermes Agent para captar leads tienes una variante donde busca un agente.
Cuándo NO te conviene ser GTM Engineer
No te conviene si buscas un puesto de ingeniería con otro nombre y no filtras ofertas. Muchas "GTM Engineer" son operaciones con una tabla de Clay y un secuenciador. Filtra por las que piden SQL, Python o APIs.
No te conviene si no aceptas que te midan en reuniones, no en PRs. Tu trabajo depende de cosas que no controlas: el producto, el precio o el comercial que llama. A algunos devs eso les motiva. A otros les quema en tres meses.
No te conviene automatizar el envío. El envío masivo sin revisión es como se quema un dominio. Y en la Unión Europea el email comercial no solicitado tiene reglas; en España, la LSSI es estricta. Revísalas antes de enviar nada desde este flujo.
Y no esperes el salario de la tabla: es de ofertas de Estados Unidos. Fuera de ahí, el rol está mucho menos medido.
El primer paso para probar el rol de GTM Engineer
Apunta 20 dominios de empresas a las que te gustaría venderles algo, o donde te gustaría trabajar. Pásales el script. Cuenta cuántos hook salen vacíos.
Ese número te dice cuánto vale de verdad la personalización con IA. Si quieres llevar ese prototipo a un producto con agentes, en el ebook gratuito El Developer Agéntico está la arquitectura completa: tools, memoria y orquestación.
Un GTM Engineer no escribe más emails. Construye el sistema que decide a quién merece la pena escribir.
Preguntas frecuentes
¿Qué significa GTM en GTM Engineer?
GTM son las siglas de go-to-market: todo lo que hace una empresa para llegar al cliente y venderle. Un GTM Engineer trabaja en la parte técnica de ese proceso, sobre todo en outbound: encontrar empresas, enriquecer sus datos y decidir a quién contactar.
¿Un GTM Engineer necesita saber programar?
No siempre. Según el análisis de Bloomberry, SQL y Python aparecen cada uno en el 38% de las ofertas, así que la mayoría no lo exige. Pero las ofertas que lo piden son las más técnicas, y ahí un developer tiene ventaja clara.
¿Cuál es la diferencia entre un GTM Engineer y RevOps?
RevOps mantiene el proceso comercial: CRM, informes y previsiones. El GTM Engineer construye sistemas nuevos que traen datos de fuera y los convierten en oportunidades. Muchas empresas mezclan los dos.
¿Cuánto gana un GTM Engineer?
En las ofertas con rango público que analizó Bloomberry, la cifra central es de 127.500 dólares al año, sobre todo en Estados Unidos. No hay un dato equivalente fiable para España ni Latinoamérica, así que no la uses como referencia local.
¿Cómo empiezo a construir sistemas así con IA?
Empieza por un caso pequeño, como el lead scoring de este post, y valida cada salida del modelo. Si quieres un recorrido de idea a producto con Claude Code, el curso Construye con IA sigue ese proceso paso a paso, y en el canal de YouTube de Dominicode hay más ejemplos de automatización con IA.
Por Bezael Pérez — Developer senior con más de 15 años de experiencia y fundador de Dominicode.









