Me complace presentar el Mapa de Habilidades de Ingeniería en IA. La IA nos permite crear software de una manera muy diferente a la de 2022, y todas las personas con las habilidades para aprovechar este cambio tienen numerosas oportunidades emocionantes de proyectos y empleo. Pero con el entorno de información ruidoso y lleno de exageraciones que rodea a la IA, ¿cuáles son las habilidades más valiosas que puedes aprender? He estado trabajando con mi equipo para sintetizar un mapa de habilidades de ingeniería en IA con el fin de ayudar a (i) los desarrolladores a priorizar qué aprender, y (ii) los empleadores a contratar desarrolladores capacitados.
Con base en un análisis de más de 10,000 ofertas de empleo; en la realización de decenas de entrevistas estructuradas con expertos en IA, gerentes de contratación y reclutadores; en la recopilación de datos a través de encuestas; y en la síntesis de otros datos en línea, estas son las cuatro habilidades más importantes de ingeniería en IA:
- Crear y desplegar aplicaciones de IA
- Fundamentos de ingeniería de software
- Usar agentes de código
- Definir qué construir
Puedes pensar, de manera informal, que nuestro proceso es similar a ejecutar un agrupamiento (clustering) sobre un conjunto de datos masivo de empleos y entrevistas con expertos para identificar las habilidades más importantes, no solo hoy sino también en el futuro cercano.
Una nota sobre terminología: hablo de habilidades de ingeniería en IA en lugar del rol de "Ingeniero de IA" (alguien cuyo trabajo es construir sistemas de IA), porque el primer concepto es mucho más amplio. Todos los desarrolladores de hoy deberían saber cómo trabajar con la nube, y solo un número menor tiene el título de "Ingeniero de nube". De manera similar, todos los desarrolladores — ingenieros full-stack, ingenieros de datos, ingenieros DevOps, ingenieros de machine learning y, sí, ingenieros de IA — necesitarán habilidades de ingeniería en IA.
Crear y desplegar aplicaciones de IA. La diferencia clave entre las aplicaciones de IA y las que no son de IA es que las primeras tienen resultados impredecibles. Cuando le haces una consulta (prompt) a un LLM, no sabes qué obtendrás como respuesta. Cuando entrenas un algoritmo de deep learning, no sabes qué predicción hará sobre ejemplos nuevos. En contraste, el software tradicional se comporta de manera más predecible.
Las personas capacitadas en crear y desplegar aplicaciones de IA entienden los componentes básicos de la IA (como los LLM, la ingeniería de contexto, el RAG, los flujos de trabajo agénticos, el machine learning y el deep learning) y, lo que es importante, cómo usar técnicas estadísticas para medir, orientar y gobernar los sistemas de IA para que se comporten de manera más predecible. Una habilidad central para lograrlo es saber cómo dirigir evaluaciones (evals) disciplinadas y ciclos de análisis de errores.
Fundamentos de ingeniería de software. Cuando entiendes profundamente cómo funciona el software, puedes crear de manera mucho más efectiva. La ingeniería de software requiere hacer compensaciones (tradeoffs) entre costo, escalabilidad, confiabilidad, velocidad y más. La seguridad y la privacidad añaden complejidad adicional.
Entender los fundamentos del software te permite reconocer qué compensaciones existen siquiera. Esto lleva a mejores decisiones al elegir tu stack de software, diseñar la arquitectura del sistema, diseñar tu almacén de datos, hacer pruebas, y más. También lleva a resultados mucho mejores que los de un desarrollador inexperto que improvisa una solución sin conocer las compensaciones que su agente de código está haciendo — que a menudo serán malas, porque no saben qué contexto darle a su agente de código. Entender los fundamentos de la ingeniería de software te permite hacer buenas compensaciones al dirigir agentes de código usando el lenguaje preciso de la ingeniería de software.
Usar agentes de código. Usar la codificación agéntica de manera efectiva es ahora una habilidad clave para todo desarrollador. Cuando tienes esta habilidad, tienes un buen modelo mental de cómo funcionan los agentes. Entiendes sus limitaciones y cómo sortearlas, y eres capaz de dirigirlos rápidamente — sabiendo cuánto intervenir y cuánto dejarlos trabajar solos — para crear software robusto sin desperdiciar tiempo o tokens en exceso.
Esto requiere que sepas cómo gestionar el contexto de un agente de código, hacer compensaciones entre planificación y ejecución, y ayudar al agente a cerrar ciclos de manera autónoma proporcionando verificadores o evaluaciones. También necesitas saber cómo trabajar con una especificación clara (y cuándo no molestarse en hacerlo), orquestar múltiples agentes que trabajen juntos, y evitar errores como el riesgo de que un agente estropee tu base de datos de producción. Debido a que la codificación agéntica evoluciona rápidamente, usar agentes de código hábilmente significa no solo conocer las prácticas de vanguardia, sino también tener rutinas para seguir probando nuevas herramientas y evolucionar tus flujos de trabajo a medida que cambian las mejores prácticas.
Definir qué construir. Dada una especificación clara, los agentes de código están mejorando rápidamente en cumplirla. Por lo tanto, nuestro trabajo como ingenieros se está desplazando hacia decidir qué debería estar en la especificación. Los ingenieros ya no deberían esperar que se les dé un diseño perfecto al píxel y que solo se les pida implementarlo. En cambio, la ingeniería en IA efectiva requiere tener sentido del producto y entender el contexto del negocio y los objetivos del cliente, para que puedas participar en dar forma e impulsar el desarrollo.
La IA también te da la oportunidad de asumir un mayor grado de responsabilidad y autonomía que antes. Puedes identificar problemas y oportunidades interesantes, y ejecutar para aprovecharlos de maneras responsables. Aprovechar esta oportunidad requiere saber cómo impulsar proyectos. Por ejemplo, saber cuándo crear rápidamente un MVP para llevarlo a los usuarios para pruebas, y cuándo reducir la velocidad y tomar más tiempo para construir con más cuidado.
Subyacente a todas estas habilidades está una mentalidad de aprendizaje continuo. La IA sigue cambiando rápidamente, por lo que todos debemos seguir aprendiendo y evolucionando nuestras habilidades para adoptar las mejores prácticas emergentes.
El enfoque principal de DeepLearning.AI es ayudar a los desarrolladores a adquirir estas habilidades de ingeniería en IA. Tengo más que decir sobre cada una de estas cuatro habilidades, y las desarrollaré en detalle en próximas publicaciones y compartiré un Mapa de Habilidades de Ingeniería en IA más detallado. Al mirar hacia dónde se dirige la ingeniería en IA, estoy increíblemente emocionado por lo que todos nosotros podremos construir. Espero que desempeñes un papel emocionante en este futuro.





