Un par de alumni de mi universidad me escribieron para pedirme consejos de búsqueda de trabajo. Así que he estado mirando portales de empleo últimamente y, entre tantas ofertas, hay dos cosas que se repiten.
- Las descripciones ya no piden solo “5+ años en React” o “se valora experiencia con Kubernetes”. Ahora piden… todo.
- O piden una sola cosa absurdamente específica.
Da la sensación de que la industria se está partiendo por la mitad, y conocer un poco de ambos mundos se está convirtiendo en una sentencia de muerte para tu carrera. Y, por desgracia, ahí es donde estamos la mayoría.
En un lado está lo que yo llamo el hiper-generalista. No el “full-stack developer” que llevamos años fingiendo ser desde 2015. Aquello era frontend + backend y, si tenías mala suerte, algo de DevOps. Esto nuevo es otra liga.
Roles como “Forward Deployed Engineer” (supuestamente +800%, aunque no sé quién cuenta eso). Después de investigar un poco con ChatGPT, el trabajo parece ser entrar en una empresa cliente y hacer de CTO temporal, terapeuta y mono de scripts al mismo tiempo. Un trimestre estás en Snapchat ayudándoles a quemar créditos de AWS, y al siguiente en un banco explicando por qué su “estrategia de IA” es solo ChatGPT envuelto en una API mediocre. Necesitas saber Rust, sí, pero también hablar en un comité de dirección y traducir “deuda técnica” a “ROI ajustado al riesgo” para gente que todavía imprime los correos.
Programar es cada vez más barato, y ese precio solo va a bajar. Cursor escupe CRUD funcionales más rápido de lo que yo escribo un README. Así que el valor ya no está en la sintaxis. Apostaría a que pronto dejaremos de ver puestos tipo “Java Developer” o “Python Developer” y pasaremos a títulos como “Prompted Software Engineer” o “Especialista en limpiar Vibe Code”. El valor ahora es el contexto. ¿Puedes entrar en un caos, detectar qué caos importa, arreglarlo con el cliente mirando, y salir antes de que te inviten a su club de lectura?
Y luego está el otro extremo: el superespecialista.
Esta gente me da un poco de miedo. No son “senior React developers” ni “expertos en Python”. Son quienes han ido tan profundo en un único vertical que ya hablan otro idioma. Piensa en Jared Sumner construyendo Bun, no porque ame JavaScript, sino porque es un maniático de sistemas que decidió que la web tenía que dejar de ser lenta. Ahora está en Anthropic haciendo sabe-Dios-qué con Zig y probablemente escribiendo allocators de memoria que hacen llorar a gente del kernel de Linux.
Las startups de IA están pagando siete cifras por ingenieros de ML individuales. No por equipos. Por personas concretas. Esta gente tiene PhD o lleva cinco años obsesionada con un único problema de optimización. No tienen “soft skills” porque no las necesitan. No van a tu standup. Están en un sótano haciendo que transformers corran un 0,3% más rápido, y ese 0,3% vale más que toda mi carrera.
La verdad incómoda es que la zona media se está muriendo. Ya no vale con grindear LeetCode tres meses, memorizar la documentación de React y caer en FAANG por inercia. Esos TikToks de “un día en la vida” donde alguien programa 20 minutos y luego juega al ping-pong se están convirtiendo en piezas de museo. El pipeline bootcamp -> big tech se está oxidando.
Tienes que elegir carril, y tienes que ir al extremo.
O te conviertes en la persona que puede entrar en cualquier codebase, cualquier contexto de negocio, cualquier stack, y entregar valor antes del viernes mientras el cliente te respira en la nuca. Eres el mercenario. El utility player. Quien sabe lo suficiente de Postgres, funnels de ventas y gestión de proyectos para mantener el sistema en pie mientras los “ingenieros reales” (los especialistas) hacen la cirugía cerebral.
O te vas al otro lado. Eliges una cosa, un lenguaje, una capa del stack, un dominio matemático, y te hundes en él como si estuvieras excavando oro. Dejas de visitar a tu abuela y de llevar a los niños al cole. Aprendes la forma de cada cache miss. Sueñas con algoritmos de garbage collection. Te vuelves tan específico que las empresas tienen que inventar puestos solo para justificar tu salario.
¿Yo? Apuesto por la generalización. Hay algo sexy en entenderlo todo desde distintos ángulos, en ser esa persona capaz de hablar de sistemas distribuidos y luego girar hacia por qué el pricing no tiene sentido. Me gusta conectar puntos, pegarlos entre sí, a veces con una pequeña esperanza de que no se desmonte cuando cambie el viento. Me gusta llevar varios sombreros, aunque algunos me queden raros.
Pero miro a los superespecialistas a veces, de verdad, y siento ese punto de envidia. La pureza de su foco, la cantidad brutal de horas que le meten a su oficio, su obsesión y el hecho de que se conocen todos los papers de su área. Esa forma de decir “me da igual tu modelo de negocio, yo hago cantar al silicio” y decirlo en serio. Eso también es una forma de libertad.
No sé cómo termina esto. Quizá los generalistas se convierten en los nuevos sales engineers y los especialistas en los nuevos research scientists, y dejamos de fingir que existía un término medio. Quizá “software engineer” deja de ser un único trabajo y se divide en diez especies distintas.
Lo único que tengo claro es que ser promedio, ser “bastante bueno en React y saber algo de cloud”, se parece cada vez más a una sentencia. Elige un lado y corre hacia el borde como si te fuera la vida en ello.