Fortran Modernization Engineer (Fortran/C to C#) $$$$ Offline
Description
We’re working on a modernization project where Fortran and C are heavily used. The goal is to migrate it into C#. We’re building a set of technical solutions to speed up and streamline the transition.
Requirements
We are seeking a specialized developer to participate in a critical legacy modernization project. Your primary goal is to analyze, document, and support the migration of legacy algorithms from Fortran and C into a modern C# .NET environment. This role requires a “software archaeologist” mindset – you must be able to understand complex scientific/mathematical logic written decades ago and preserve its integrity in a modern architecture.
Must-Have Qualifications
- Fortran Proficiency: Deep experience reading and writing Fortran (versions 77 through 95). You must understand common legacy patterns (COMMON blocks, EQUIVALENCE statements, fixed-format source).
- Some C# / .NET Expertise (or another oop/modern programming language)
- C Language Knowledge: Ability to read and navigate C code, particularly where it interfaces with Fortran.
- Refactoring Experience: Proven track record of working on code migration or modernization projects.
- Nice-to-Have
Experience with mathematical or scientific computing libraries - Familiarity with Fortran-to-C interoperability
Job responsibilities
- Analyze & Reverse Engineer: Deeply review existing legacy codebases (Fortran 77/90/95 and C) to understand the underlying business logic and mathematical models.
- Code Migration: Support C# developers in porting functions, subroutines, and data structures from Fortran/C to clean, idiomatic C#.
- Validation & Testing: Support creation of distinct unit tests to ensure “bit-exact” or functionally equivalent outputs between the legacy executables and the new C# solution.
- Interop Management: Temporarily manage P/Invoke or C++/CLI wrappers if a phased migration strategy is required.
- Documentation: Document the logic of undocumented legacy modules for future maintainability.
Required skills experience
| .NET |
Required languages
| English | B2 - Upper Intermediate |
The job ad is no longer active
Look at the current jobs C# / .NET →