Deliver production-quality code with minimal supervision and contribute immediately to the refactoring program.
Required Qualifications and Experience
Strong professional experience developing desktop applications using C#, .NET, WPF, and XAML.
Advanced hands-on expertise in MVVM, including data binding, commands, resources, UI lifecycle management, and ViewModel design.
Practical experience with MVVM frameworks such as CommunityToolkit.Mvvm, Prism, or comparable frameworks.
Deep understanding of dependency injection, interface-driven design, service abstractions, and IoC containers.
Demonstrated experience refactoring complex, tightly coupled legacy applications into modular components.
Strong unit-testing skills using xUnit or NUnit and mocking frameworks such as Moq.
Hands-on experience with static code analysis and technical-debt management using SonarQube and Visual Studio tooling.
Ability to interpret and implement architectural documentation, code standards, folder conventions, and UML diagrams.
Proven ability to work independently in a senior engineering role and contribute with minimal technology ramp-up.
Preferred Attributes
Experience modernizing large-scale or business-critical WPF applications through incremental migration.
Familiarity with parallel refactoring strategies that allow feature development and modernization to proceed concurrently.
Strong analytical, troubleshooting, and communication skills in a cross-functional engineering environment.
Quality-first mindset with disciplined use of automated tests, code reviews, and measurable engineering metrics.
Delivery Context and Governance
The selected developers will operate as a dedicated delivery cell under internal technical governance. Architectural decisions, quality expectations, and migration priorities will be aligned with the designated technical leaders and existing internal documentation. The team is expected to onboard rapidly and begin meaningful code contribution without a technology learning curve.
Success Measures
Progressive improvement of the application Maintainability Index toward a healthy target above 75/100.
Reduction in cyclomatic complexity, coupling, and technical debt across migrated modules.
Increased automated unit-test coverage and reliable protection of existing business logic.
Compliance with SonarQube quality gates, code-style guidance, and architectural standards.
More modular, stable, and testable software that supports faster future feature delivery.