Software Engineer, Legacy Codebase Migration
Apply hands-on experience modernizing complex, production-scale software systems to help advance AI-driven codebase migration work. This role focuses on safe, reliable transformations of legacy applications while preserving the behavior and operational standards critical to enterprise environments. Role Overview Work on challenging modernization problems modeled on real-world legacy systems, contributing expertise from large enterprise migrations without requiring an open-source maintainer background. Ongoing work may be available as the research program expands. Key Responsibilities Design, implement, review, and assess complex codebase migration and modernization tasks. Analyze legacy code, dependencies, APIs, databases, build systems, and infrastructure to determine safe migration approaches. Preserve functionality, backward compatibility, data integrity, security, and performance throughout migrations. Develop tests and validation strategies that identify regressions and behavioral differences. Evaluate AI-generated migration solutions for correctness, completeness, maintainability, and production readiness. Qualifications 5+ years of professional software engineering experience, ideally at the Senior, Staff, Principal, or equivalent level. Deep expertise in legacy codebase migration and modernization, with personal ownership of or substantial technical contributions to large-scale production migrations. Experience with mature systems that involve technical debt, complex dependencies, legacy integrations, and significant regression risk. Strong knowledge of compatibility, testing, observability, staged rollouts, rollback strategies, and behavioral equivalence. Ability to quickly understand unfamiliar codebases and diagnose subtle migration failures. Experience modernizing core banking, payments, trading, insurance, healthcare, telecom, or other high-reliability systems is especially valuable. For COBOL or mainframe modernization, experience with z/OS, CICS, JCL, DB2, VSAM, batch processing, and COBOL-to-Java or Python migrations is particularly valuable. Relevant Migration Experience Deep expertise in one or more of the following modernization areas is required: Language and version upgrades, including Java 8 to 17 or 21, legacy .NET to modern .NET, Python 2 to 3, and PHP 7 to 8. Language rewrites, including COBOL to Java or Python and JavaScript to TypeScript. Framework upgrades or replacements involving Angular, Rails, Django, Spring or Spring Boot, ASP.NET, Next.js, Astro, or similar major frameworks. Database and ORM migrations, including Oracle or MySQL to PostgreSQL, SQL to NoSQL, Hibernate to jOOQ, Sequelize to Prisma, and raw SQL to an ORM. Infrastructure modernization from VMs or bare metal to containers, Docker, Kubernetes, or cloud-native architectures. CI/CD transitions from Jenkins or Travis to GitHub Actions, GitLab CI, or modern deployment pipelines. Build and package tooling migrations, including Maven to Gradle, Webpack to Vite, CRA to Next.js, and npm to pnpm. API modernization, including REST to GraphQL, HTTP or REST to gRPC, and SOAP or legacy APIs to modern interfaces. Authentication modernization from legacy authentication to OAuth/OIDC, SAML/SSO, or modern identity and authorization systems. Repository consolidation from polyrepo to monorepo using Bazel, Nx, Turborepo, or similar tools. Migration of unit, integration, browser, and end-to-end testing frameworks. Replacement of deprecated or end-of-life libraries, APIs, runtimes, and vendor SDKs. Work Terms Remote, hourly engagement. Compensation $200 per hour.