🎁 Regístrate ahora y obtén hasta 30 minutos gratis de uso de IA en línea. Sin tarjeta de crédito.

Preguntas y respuestas de entrevista de Talend: ETL, tMap, contexto y depuración

September 5, 2026
Preguntas de entrevista de Talend con respuestas claras sobre jobs, tMap, variables de contexto, manejo de errores, ajuste de rendimiento y despliegue, más un escenario de práctica.
Preguntas y respuestas de entrevista de Talend: ETL, tMap, contexto y depuración
preguntas de entrevista de Talend
preguntas y respuestas de entrevista de Talend
preguntas de entrevista de ETL de Talend
preguntas de entrevista de tMap

Las entrevistas de Talend suelen evaluar dos cosas: si sabes diseñar un job de integración de datos sensato y si puedes descubrir por qué uno funciona lento o está roto. Espera preguntas sobre los componentes básicos (componentes, subjobs, tMap, variables de contexto) y luego escenarios sobre errores, rendimiento y despliegue.

Talend ahora forma parte de Qlik, y la línea de productos ha cambiado con los años. Revisa la descripción del puesto para ver si el equipo usa Talend Studio con una licencia de integración de datos o de big data, Talend Cloud, o una configuración de código abierto más antigua. Los conceptos a continuación aplican a todas ellas, pero los nombres de los componentes y los detalles de despliegue varían.

Las preguntas que más escucharás

¿Qué es Talend y cómo genera código?

Talend es una herramienta de integración de datos. Construyes jobs en un lienzo conectando componentes, y Talend Studio genera código Java a partir del diseño. Cuando ejecutas un job, ese código se compila y se ejecuta. Esto importa en las entrevistas porque explica por qué puedes incluir Java personalizado en un componente tJava o tJavaRow, por qué las rutinas son clases Java y por qué la configuración de memoria son ajustes de la JVM.

¿Cuál es la diferencia entre un job, un subjob y un joblet?

Un job es el flujo de trabajo completo. Un subjob es un grupo de componentes conectados por enlaces de flujo de datos, y un job normalmente son varios subjobs enlazados por triggers. Un joblet es un grupo reutilizable de componentes que se guarda una vez y se usa en muchos jobs, como una función.

¿Cuál es la diferencia entre OnSubjobOk y OnComponentOk?

Ambos son enlaces de trigger que se ejecutan después de que algo tiene éxito. OnSubjobOk se dispara cuando todo el subjob termina correctamente. OnComponentOk se dispara en cuanto un solo componente termina, lo que puede ocurrir en medio de un subjob. También existen OnSubjobError y OnComponentError para los fallos, además de Run if para rutas condicionales.

¿Qué hace tMap?

tMap es el componente de transformación principal. Une un flujo principal con uno o más flujos de búsqueda, aplica expresiones, filtra filas y envía datos a varias salidas. Características clave que mencionar:

  • Inner join y left outer join en las búsquedas
  • Salidas de rechazo para las filas que fallan un join o un filtro
  • Expresiones de filtro en las entradas y salidas
  • Variables, para que un cálculo se escriba una vez y se reutilice
  • Opciones del modelo de búsqueda: cargar una vez, recargar en cada fila o recargar en cada fila con una clave

¿Cómo manejas una búsqueda grande en tMap?

Por defecto, los datos de búsqueda se cargan en memoria. Para una búsqueda grande, activa "Store temp data" para que tMap la escriba en disco, aumenta la memoria de la JVM o evita el problema haciendo el join en la base de datos. También puedes usar "Reload at each row" para una búsqueda que depende de la fila entrante, a costa de una consulta por fila, así que solo es adecuado para flujos principales pequeños.

¿Qué son las variables de contexto y por qué usarlas?

Las variables de contexto contienen valores que cambian entre entornos, como nombres de host, esquemas, rutas de archivos y credenciales. Se definen una vez, se agrupan en contextos (Dev, Test, Prod) y se selecciona el contexto en tiempo de ejecución. Una buena respuesta añade que las contraseñas no deben almacenarse en texto plano en el job y que el mismo job exportado debería ejecutarse en todos los entornos cambiando solo el archivo de contexto.

¿Cómo pasas valores entre jobs?

Con tRunJob puedes pasar parámetros de contexto a un job hijo, y un job hijo puede devolver valores al padre usando el componente tBufferOutput o variables globales. Dentro de un mismo job, los valores se guardan en el globalMap, un mapa de Java que lees con (String) globalMap.get("key") y escribes con globalMap.put.

¿Cuál es la diferencia entre tFlowToIterate y un flujo normal?

Un flujo normal mueve todas las filas por los componentes a la vez. tFlowToIterate convierte cada fila en una iteración, de modo que los siguientes componentes se ejecutan una vez por fila. Es útil para iterar sobre una lista de nombres de archivos o tablas, pero es lento para grandes conjuntos de datos porque cada iteración inicia un subjob.

¿Cómo manejas los errores en Talend?

Menciona varias capas:

  1. Enlaces de trigger como OnSubjobError y OnComponentError para enviar los fallos por una ruta separada
  2. tDie para detener el job con un código de error, y tWarn para registrar una advertencia
  3. tLogCatcher para recopilar las advertencias y los errores lanzados por tDie, tWarn y las excepciones de Java
  4. Enlaces de rechazo en componentes como tMap y los componentes de salida de base de datos para las filas defectuosas
  5. tPreJob y tPostJob para abrir y liberar siempre los recursos

¿Cómo depurarías un job que falla?

Ejecútalo en modo Debug, o añade tLogRow para ver los datos entre componentes. Revisa el error exacto y el nombre del componente en la consola, y luego revisa la configuración de la conexión y los valores de contexto en uso. Para problemas de datos, envía los rechazos a un archivo y examínalos. Usar tStatCatcher o las estadísticas del job también muestra los recuentos de filas y los tiempos por componente.

Preguntas sobre rendimiento

Un job que carga un millón de filas es lento. ¿Qué revisas?

  1. Dónde se va el tiempo. Los conteos de filas y los tiempos por componente muestran el cuello de botella.
  2. Si el trabajo corresponde a la base de datos. Los joins y las agregaciones suelen ser más rápidos en SQL que en tMap.
  3. El tamaño del commit. Hacer commit fila por fila es lento, así que haz commit por lotes.
  4. Los componentes bulk. Muchas bases de datos tienen componentes de carga masiva que son mucho más rápidos que las inserciones fila por fila.
  5. Las búsquedas de tMap. Una búsqueda grande en memoria puede provocar pausas de garbage collection o errores de memoria insuficiente.
  6. La configuración de la JVM. Aumenta el heap máximo (el valor de Xmx) si la memoria es el límite.
  7. El paralelismo. Algunos componentes y jobs pueden ejecutarse en paralelo, pero solo cuando el trabajo no depende del orden.

¿Cómo cargas solo los registros nuevos o modificados?

Mantén una marca de agua alta, como un timestamp de última modificación o un ID incremental, guárdala en una tabla de control o en una variable de contexto, y extrae solo las filas que estén por encima de esa marca. Para las actualizaciones en el destino, compara las claves y usa acciones de inserción o actualización, o utiliza una sentencia merge en la base de datos. Para las eliminaciones puede que necesites una comparación completa de claves o un flujo de captura de cambios (change data capture).

¿Cómo eliminas los duplicados?

tUniqRow elimina los duplicados según las columnas seleccionadas y puede enviar los duplicados a una salida aparte. tAggregateRow puede agrupar y elegir un valor. Para conjuntos de datos enormes, suele ser mejor hacerlo en la base de datos con una función de ventana.

Componentes que conviene conocer por nombre

ComponenteQué hace
tFileInputDelimited, tFileOutputDelimitedLeen y escriben archivos delimitados
tDBInput, tDBOutputLeen y escriben tablas de base de datos (cada base de datos tiene sus propias versiones)
tMapUne, filtra y transforma
tAggregateRowAgrupa y agrega
tSortRowOrdena filas
tUniqRowElimina duplicados
tReplicateEnvía el mismo flujo a varias salidas
tNormalize, tDenormalizeDividen una columna en filas, o combinan filas en una columna
tRunJobLlama a otro job
tJava, tJavaRow, tJavaFlexCódigo Java personalizado
tLogRowImprime filas en la consola
tDie, tWarn, tLogCatcherManejo de errores y logging
tPreJob, tPostJobCódigo que se ejecuta antes y después del flujo principal

Despliegue y programación

Prepárate para describir cómo llevas un job de Studio a producción. Los pasos típicos son compilar el job como un paquete independiente o publicarlo en un repositorio, configurar el contexto de producción y programarlo con el planificador del equipo, ya sea la propia herramienta de gestión de Talend, cron u otro orquestador. El control de versiones, los estándares de nombres y la documentación de los jobs forman parte de una buena respuesta.

Un escenario que puedes practicar

"Recibes un archivo diario de clientes. Algunas filas tienen emails faltantes y algunos clientes ya existen en el warehouse. Diseña el job."

Un buen esquema:

  1. Lee el archivo con tFileInputDelimited y un esquema definido.
  2. En tMap, filtra las filas con emails faltantes hacia un archivo de rechazo y busca la clave del cliente en la tabla del warehouse.
  3. Envía los clientes existentes a una ruta de actualización y los nuevos a una ruta de inserción.
  4. Escribe en la base de datos por lotes con un tamaño de commit adecuado.
  5. Usa tLogCatcher y una tabla de control para registrar los conteos de filas y los errores de cada ejecución.
  6. Usa una variable de contexto para la ruta del archivo y la conexión a la base de datos, de modo que el mismo job se ejecute en cualquier entorno.

Di tus supuestos en voz alta, como el tamaño del archivo y si hay que conservar el historial, porque los entrevistadores quieren ver cómo razonas.

Cómo prepararte

Construye un job pequeño de principio a fin si puedes: lee un archivo, únelo a una tabla en tMap, maneja los rechazos y escribe en una base de datos. Debes poder explicar qué harías cuando falle en la fila 500.000. Conoce uno o dos ejemplos reales de tu experiencia, con números como filas por ejecución o tiempo ahorrado. Para temas relacionados de ingeniería de datos, consulta nuestras guías de entrevistas de Databricks y Snowflake.

Practicar en voz alta ayuda. Usa una entrevista simulada para explicar el diseño de un job y luego lee la transcripción para ver en qué puntos tu explicación se saltó pasos. Sigue las reglas del empleador sobre herramientas de IA en cualquier entrevista en vivo.

Practica respuestas de entrevista de Talend con YesToTheOffer

Realiza una entrevista técnica simulada, explica un diseño de job en voz alta y revisa tu transcripción después. 30 minutos gratis, sin suscripción.

iOS & Android — Próximamente
Ver precios