VBA Developer

  • Contract

Job Description

We are seeking a highly experienced C# / C++ Developer with proven, hands-on expertise in migrating legacy VBA applications (typically Excel/Access-based) to modern C# (.NET) solutions. This role focuses on legacy system modernization: deeply analyzing complex VBA codebases, reverse-engineering business logic, redesigning and reimplementing it in clean, performant C# code, and delivering functionally equivalent, maintainable applications. The ideal candidate has successfully led or significantly contributed to multiple VBA-to-C# migration projects and excels at bridging old procedural code with object-oriented best practices.

Key Responsibilities:

  • Analyze and understand existing VBA (Visual Basic for Applications) code in Excel macros, Access databases, and related legacy systems
  • Reverse-engineer business rules, workflows, and data processing logic from VBA
  • Redesign and refactor the logic into efficient, scalable C# (.NET Framework / .NET Core / .NET 6+) applications
  • Improve performance, reliability, and maintainability compared to the original VBA implementation
  • Ensure complete functional parity through rigorous testing and validation against the legacy system
  • Handle debugging of complex legacy VBA issues and translate them into modern C# equivalents
  • Collaborate with stakeholders to clarify requirements and edge cases hidden in VBA logic
  • Perform code reviews, write unit/integration tests, and create technical documentation for migrated components
  • Work with legacy systems integration points (e.g., COM interop if needed during transition)

 

    Qualifications

    • 8+ years of hands-on software development experience
    • Strong proficiency in C# (.NET) – advanced object-oriented design, async programming, LINQ, etc.
    • Solid experience with C++ (beneficial for performance-critical components or interop scenarios)
    • Proven track record of successfully migrating legacy VBA applications (Excel/Access macros, forms, reports) to C#/.NET – please highlight specific project examples
    • Deep understanding of legacy system modernization challenges, including dealing with undocumented code, spaghetti logic, and macro-heavy workflows
    • Excellent debugging and troubleshooting skills across both VBA and C# environments
    • Strong testing practices (unit, integration, regression) and experience ensuring parity in migrated systems
    • Familiarity with refactoring techniques, code quality tools, and documentation best practices
    • Ability to work independently in a remote setting with strong problem-solving and analytical skills

    Nice-to-Have Skills:

    • Experience with VB6 to .NET migrations (as many VBA codebases originate from VB6 patterns)
    • Knowledge of .NET desktop (WinForms/WPF) or web (ASP.NET) targets for migrated apps
    • Exposure to database migration (Access → SQL Server/PostgreSQL/etc.) or data layer refactoring
    • Familiarity with COM/.NET interop or gradual migration strategies

    Additional Information

    All your information will be kept confidential according to EEO guidelines.