




Resumen: Buscamos un Ingeniero de Compilador Front-End para diseñar, desarrollar y escalar el front-end del compilador de una pila de IA/ML, centrándose en tuberías de conversión de modelos basadas en Python. Aspectos destacados: 1. Diseñar y desarrollar módulos convertidores front-end basados en Python para modelos de IA/ML 2. Implementar tuberías de construcción, transformación y reducción de grafos a representaciones intermedias (IR) 3. Trabajar en la descomposición y conversión de modelos para LLMs **Tipo:** Contrato (6\-9 meses) **Ubicación:** Teletrabajo \- El candidato debe residir y estar legalmente autorizado para trabajar en la UE o en EE.UU. **Descripción general del puesto:** Buscamos un **Ingeniero de Compilador Front-End** para diseñar, desarrollar y escalar el front-end del compilador de nuestra pila de IA/ML. Este puesto se centra en construir **tuberías de conversión de modelos basadas en Python**, que traduzcan modelos procedentes de frameworks populares de ML como **ONNX, TensorFlow y PyTorch**, a nuestra **Representación Intermedia (IR) interna**. El candidato ideal trabajará extensamente con **representaciones y optimizaciones a nivel de grafo**, dará soporte a **arquitecturas modernas de aprendizaje profundo (incluidos los LLMs)** y construirá una **infraestructura de pruebas robusta**, garantizando así la corrección, el rendimiento y la mantenibilidad a largo plazo del front-end del compilador. **Principales responsabilidades:** * Diseñar, desarrollar y mantener **módulos convertidores front-end basados en Python**, para incorporar modelos procedentes de **ONNX, TensorFlow y PyTorch**, en una IR interna. * Implementar **tuberías de construcción, transformación y reducción de grafos a IR**, como parte del front-end del compilador. * Analizar grafos de cómputo e implementar **pasos de optimización a nivel de grafo**, tales como fusión de operadores, simplificación y canonicalización. * Construir y ampliar **marcos de coincidencia de patrones y reescritura de grafos**, para optimizaciones escalables y mantenibles. * Trabajar en la **descomposición y conversión de modelos** de bloques fundamentales utilizados en **LLMs**, incluyendo mecanismos de atención, redes neuronales de perceptrón multicapa (MLPs), capas de normalización y embeddings. * Aprovechar e integrar herramientas de **ONNX Runtime**, para análisis, validación y flujos de conversión de modelos, según corresponda. * Desarrollar y mantener una **infraestructura de pruebas basada en Python**, para validación de corrección, cobertura de operadores, pruebas de regresión e integración continua (CI). * Depurar y resolver incidencias en las etapas de ingestión, conversión, optimización de grafos y generación de IR de los modelos. * Colaborar con los equipos de back-end del compilador, runtime y rendimiento, para asegurar la corrección y eficiencia extremo a extremo de los modelos. **Conocimientos y experiencia requeridos:** * **Excelentes habilidades de programación en Python (obligatorias)**, con énfasis en código limpio, modular, mantenible y bien probado. * Conocimientos sólidos sobre **fundamentos de compiladores**, incluyendo: \- Representaciones intermedias (IR) \- Modelos de cómputo basados en grafos \- Pasos de transformación y optimización * Experiencia práctica con **frameworks de ML**, incluyendo **ONNX, TensorFlow y PyTorch**, y conocimientos básicos de **Caffe**. * Experiencia práctica en **análisis, transformación y optimización de grafos** para modelos de ML. * Familiaridad con arquitecturas modernas de ML, especialmente **redes neuronales convolucionales (CNN) y modelos basados en Transformers**. * Experiencia en el desarrollo o contribución a **marcos de pruebas** para compiladores, sistemas de ML o grandes bases de código Python. * Excelentes habilidades de depuración y resolución de problemas en flujos de trabajo complejos y multietapa. **Deseable:** * Familiaridad con **front-ends y dialectos basados en MLIR**, tales como: **\- TOSA** **\- StableHLO** **\- Torch\-MLIR** * Conocimientos sobre pilas de compiladores de IA, back-ends de hardware o orientación a aceleradores. * Experiencia trabajando con modelos a gran escala o con tuberías de inferencia/entrenamiento de ML en producción. Tipo de empleo: Contrato Duración del contrato: 6\-9 meses Pregunta(s) de solicitud: * ¿Está usted legalmente autorizado para trabajar en la UE o en EE.UU.? * ¿Necesitará actualmente o en el futuro patrocinio para obtener una visa de trabajo para laborar en la UE o en EE.UU.? Ubicación del trabajo: Teletrabajo


