.net Core WPF Senior Software Engineer

 

About the Role

We are seeking a skilled .NET Developer with expertise in Windows Presentation Foundation (WPF) to join our team. In this role, you will be responsible for designing and implementing high-performance desktop applications, with a focus on multimedia player applications. The ideal candidate should have a strong understanding of C#, WPF, and MVVM design patterns, as well as experience with multimedia libraries, and be comfortable working within a collaborative, agile development environment.


Key Responsibilities: -


Key Focus Areas: -


  • Application Development: Design, develop, and maintain desktop applications using .NET and WPF/MAUI, focusing on creating intuitive, responsive multimedia applications.
  • Experience with Multi-threading: Understanding of multi-threading and asynchronous programming in .NET.
  • Winform Proficiency: Candidate should be proficient in developing interactive applications using winform framework in .NET along with the knowledge of Event-Driven Programming, Design-Time Support and Graphics Support.
  • Integration: Develop and maintain integrations with other systems, APIs, and multimedia libraries.
  • Code Quality: Write clean, maintainable, and well-documented code, conducting peer reviews to uphold coding standards.
  • Database Experience: Proficiency in working with relational databases (e.g., SQL Server), including SQL Joins.
  • Communication & Articulation: Clearly articulate technical concepts and ideas to team members and clients, fostering effective collaboration.
  • Client-Centric Project Planning: Collaborate with clients to understand their requirements clearly and develop precise project plans that meet their needs.


Also Required: -


  • UI/UX Collaboration: Work closely with UI/UX designers to implement design specifications and ensure applications provide an exceptional user experience.
  • Architecture & Patterns: Implement MVVM and other relevant design patterns to build maintainable and scalable WPF applications.
  • Testing & Debugging: Participate in unit testing, debugging, and troubleshooting, ensuring high-quality releases.
  • Continuous Improvement: Stay up-to-date with the latest .NET, WPF, and multimedia development trends and recommend improvements.


Qualifications: -

  • 5-8 years of experience as a .NET Developer, with at least 3 years of hands-on experience in WPF application development.
  • Proficiency in C# and .NET Framework/.NET Core, with in-depth experience in developing desktop applications using WPF.
  • Strong Understanding of MVVM: Extensive experience with the MVVM design pattern and data binding in WPF applications.
  • XAML Expertise: Proficiency in creating and styling complex UIs in XAML, with a focus on creating visually appealing and responsive interfaces.
  • Performance Tuning: Knowledge of best practices for optimizing desktop applications, including memory management and asynchronous programming.
  • RESTful Services: Familiarity with integrating RESTful services and APIs within WPF/MAUI applications.
  • Agile Methodology: Experience working within an Agile/Scrum development environment.
  • Version Control: Proficiency with Git or other version control systems.


Preferred Skills: -

  • Multimedia Functionality: Implement and optimize multimedia features, including video/audio playback, streaming, and multimedia file handling.
  • Multimedia Development Experience: Knowledge of multimedia libraries (e.g., DirectShow, multiMediaSoft, NAudio) and experience with audio/video processing and playback within WPF applications.
  • Third-Party Libraries: Experience with third-party libraries and frameworks for WPF, such as Telerik or DevExpress.
  • IoC/Dependency Injection: Familiarity with dependency injection frameworks (e.g., Unity, Autofac).
  • Experience with .NET 6/7: Knowledge of the latest .NET versions and new features is a plus.


Soft Skills: -

  • Strong leadership and communication skills.
  • Problem-solving mindset with a keen eye for detail.
  • Ability to work in a fast-paced environment and manage multiple projects.


Education Qualifications: -

  • Bachelor’s or Master’s degree in Computer Science, Engineering, or related field.


Experience: -

  • Total 5 to 8 years of experience