Job description
We are seeking a skilled Software Engineer with strong 5+ years expertise in C# and the .NET ecosystem to join our development team. The ideal candidate will have experience building scalable desktop and backend applications, a solid understanding of software design principles, and the ability to work effectively within Agile development environments.
The role involves designing, developing, testing, and maintaining high-quality software solutions while collaborating closely with cross-functional teams to deliver reliable and performant applications.
Key Responsibilities
- Design, develop, test, and maintain desktop and backend applications using C# and .NET technologies.
- Build scalable, maintainable, and high-performance software solutions following industry best practices.
- Develop and integrate RESTful APIs and services.
- Participate in architecture discussions, technical design reviews, and code reviews.
- Write clean, efficient, and well-documented code following SOLID principles and object-oriented programming practices.
- Troubleshoot, debug, and resolve application issues, including performance bottlenecks and production defects.
- Develop and execute unit tests to ensure software quality and reliability.
- Collaborate with Product Owners, QA Engineers, and other stakeholders in an Agile/Scrum environment.
- Utilize Git and Azure DevOps for source control, CI/CD, and release management.
- Contribute to continuous improvement initiatives and engineering best practices.
- Work closely with team members to deliver projects within established timelines and quality standards.
Required Qualifications
- Bachelor's degree in computer science, Software Engineering, or a related field.
- 5+ years' experience with C# and .NET Framework/.NET Core.
- Experience developing desktop applications using WinForms.
- Strong understanding of Object-Oriented Design and Programming (OOP) principles.
- Hands-on experience with Entity Framework.
- Experience developing and consuming WCF services and RESTful APIs.
- Strong knowledge of multithreading and concurrent programming concepts.
- Experience with SQL Server and database design.
- Proficiency with Git and Azure DevOps/TFS.
- Experience with CI/CD pipelines and automated deployment processes.
- Familiarity with Agile/Scrum and Scaled Agile development methodologies.
- Experience with unit testing frameworks such as MSTest, NUnit, or xUnit.
- Strong debugging, analytical, and problem-solving skills.
- Good understanding of software architecture and design patterns.
- Knowledge of networking and virtualization concepts.
- Excellent communication and collaboration skills.
- Fluent verbal English communication skills.
Preferred Qualifications
- Experience working on enterprise-scale applications.
- Exposure to cloud-based environments and modern deployment practices.
- Experience mentoring junior developers and participating in technical leadership activities.
- Familiarity with performance optimization and application monitoring tools.
A Culture of Belonging: At our core, we value diversity and inclusion. As an equal opportunity employer, we are dedicated to creating a workplace where every voice is heard, every person is respected, and everyone has the opportunity to succeed.
This job post has been translated by AI and may contain minor differences or errors.