We are looking for an experienced C# / WPF Desktop Application Developer to join our engineering team in Chennai. The ideal candidate will have strong expertise in developing and maintaining Windows-based desktop applications using C#, WPF, XAML, and MVVM architecture. You will be responsible for designing, developing, debugging, and optimizing high-performance desktop applications while following object-oriented programming principles and established software design patterns.
Key Responsibilities:
- Design, develop, and maintain robust desktop applications using C# and WPF.
- Develop responsive and user-friendly interfaces using WPF and XAML.
- Implement applications using MVVM architecture and maintain clean separation of concerns.
- Apply strong OOP concepts, SOLID principles, and software design patterns to build scalable and maintainable solutions.
- Develop multithreaded applications and optimize application performance, responsiveness, and resource utilization.
- Troubleshoot, debug, and resolve complex application issues across development and production environments.
- Conduct code reviews and ensure adherence to coding standards and best practices.
- Collaborate with cross-functional teams including product, QA, and other engineering teams to deliver high-quality software.
- Analyze technical requirements and translate them into effective software solutions.
- Identify performance bottlenecks and implement appropriate optimization techniques.
- Contribute to continuous improvement of development processes, application quality, and engineering practices.
Required Skills & Experience:
- 5 years of hands-on experience in C#/.NET development.
- Strong experience in WPF (Windows Presentation Foundation) and desktop application development.
- Good proficiency in XAML and UI development.
- Strong understanding and practical experience with MVVM architecture.
- Excellent understanding of Object-Oriented Programming (OOP) concepts.
- Experience with Design Patterns and software development best practices.
- Strong knowledge of multithreading, asynchronous programming, and performance optimization.
- Strong debugging and troubleshooting skills.
- Ability to analyze complex technical issues and provide effective solutions.
- Good understanding of software development lifecycle and coding standards.
- Strong communication and collaboration skills.
- Chance to work with a leading MNC in a permanent role.
- Work on enterprise-grade desktop applications and challenging engineering problems.
- Opportunity to work with modern development practices and scalable software solutions.
- Collaborative environment with opportunities for technical and professional growth.