Acerca del puesto
Mercor colabora con un laboratorio de investigación de IA de frontera para incorporar a ingenieros de software con experiencia y un profundo conocimiento de la migración y modernización de código base heredado (legacy). Buscamos ingenieros que hayan ejecutado personalmente migraciones complejas en sistemas grandes y de nivel de producción, en particular en servicios financieros, fintech/pagos, seguros, sanidad, telecomunicaciones, grandes empresas tecnológicas y otras empresas de misión crítica. La sólida experiencia práctica con migraciones en producción es la cualificación principal.
Qué hará
- Diseñar, implementar, revisar y evaluar tareas complejas de migración y modernización de código base.
- Analizar el código heredado, las dependencias, las API, las bases de datos, los sistemas de compilación y la infraestructura para determinar enfoques de migración seguros.
- Preservar la funcionalidad, la compatibilidad con versiones anteriores, la integridad de los datos, la seguridad y el rendimiento durante las migraciones.
- Desarrollar pruebas y estrategias de validación para identificar regresiones de migración y diferencias de comportamiento.
- Evaluar soluciones de migración generadas por IA en cuanto a corrección, integridad, mantenibilidad y preparación para producción.
Experiencia de migración relevante
Los candidatos deben tener un profundo conocimiento en uno o más de los siguientes ámbitos:
- Lenguaje/versión: Java 8 → 17/21, .NET heredado → .NET moderno, Python 2 → 3, PHP 7 → 8
- Reescrituras de lenguaje: COBOL → Java/Python, JavaScript → TypeScript
- Frameworks: Angular, Rails, Django, Spring/Spring Boot, ASP.NET, Next.js/Astro y otras actualizaciones/sustituciones importantes de frameworks
- Bases de datos y ORM: Oracle/MySQL → PostgreSQL, SQL → NoSQL, Hibernate → jOOQ, Sequelize → Prisma, SQL puro → ORM
- Infraestructura: VM/servidores físicos (bare metal) → contenedores, Docker/Kubernetes, arquitecturas cloud-native
- CI/CD: Jenkins/Travis → GitHub Actions, GitLab CI o pipelines de despliegue modernos
- Herramientas de compilación/paquetes: Maven → Gradle, Webpack → Vite, CRA → Next.js, npm → pnpm
- API: REST → GraphQL, HTTP/REST → gRPC, SOAP/API heredadas → interfaces modernas
- Autenticación: autenticación heredada → OAuth/OIDC, SAML/SSO, sistemas modernos de identidad y autorización
- Repositorios: Polyrepo → monorepo con Bazel, Nx, Turborepo o similares
- Pruebas: Migración de frameworks de pruebas unitarias, de integración, de navegador y E2E
- Dependencias/SDK: Sustitución de bibliotecas, API, entornos de ejecución y SDK de proveedores obsoletos o al final de su vida útil (EOL)
Perfil ideal
- 5+ años de experiencia profesional en ingeniería de software, idealmente a nivel Senior, Staff, Principal o equivalente.
- Haber liderado personalmente o realizado contribuciones técnicas sustanciales a migraciones a gran escala en producción.
- Experiencia trabajando con sistemas maduros que implican deuda técnica, dependencias complejas, integraciones heredadas y un riesgo significativo de regresión.
- Sólido conocimiento de compatibilidad, pruebas, observabilidad, despliegues por fases, estrategias de reversión (rollback) y equivalencia de comportamiento.
- Capacidad para razonar en profundidad sobre bases de código desconocidas y diagnosticar fallos de migración sutiles.
- Especialmente valioso: ingenieros que hayan modernizado sistemas de banca central (core banking), pagos, trading, seguros, sanidad, telecomunicaciones u otros sistemas de alta fiabilidad.
- Para la modernización de COBOL/mainframe, es especialmente valiosa la experiencia con tecnologías como z/OS, CICS, JCL, DB2, VSAM, procesamiento por lotes y migraciones de COBOL a Java/Python.
Por qué unirse
- Aplique su experiencia en migración para ayudar a dar forma a cómo los modelos de IA de frontera comprenden y ejecutan la modernización compleja de software.
- Trabaje en problemas técnicamente desafiantes modelados a partir de sistemas heredados reales a escala de producción.
- Aporte la experiencia adquirida en grandes migraciones empresariales sin necesidad de contar con un historial como mantenedor de código abierto.
- Oportunidad de trabajo continuo a medida que el programa de investigación se amplíe.