We are seeking an experienced C# developer to join our team. The ideal candidate should have a minimum of 3 years of professional experience in C# development and possess a strong understanding of multithreading, client-server architecture, debugging techniques, Microsoft SQL database management, as well as knowledge in low-level hardware integration such as controller drivers and cameras. Knowledge of C++ and Python is considered an advantage.
Responsibilities:
• Design, develop, and maintain software applications using C# programming language.
• Collaborate with cross-functional teams to analyze requirements, identify solutions, and implement effective software solutions.
• Implement multithreading techniques to optimize application performance and responsiveness.
• Develop client-server architectures and implement communication protocols for efficient data transfer.
• Debug and troubleshoot software issues to identify and resolve bugs, bottlenecks, and performance problems
• Integrate low-level hardware components such as controller drivers and cameras into software applications.
• Utilize EFCore for efficient data access and management.
• Perform tests using tools such as xUnit to ensure software quality and reliability.
• Stay up to date with industry trends and advancements in C# development and related technologies
Qualifications:
• Bachelor's degree in Computer Science, Software Engineering, or a related field (or equivalent experience).
• Minimum of 3 years of professional experience in C# development.
• Strong knowledge of multithreading and concurrent programming techniques.
• Experience with client-server architecture and implementing communication protocols (e.g., TCP/IP, WebSocket).
• Proficiency in debugging and troubleshooting skills to identify and resolve software issues.
• Experience with Scrum methodology for agile software development.
• Familiarity with development under the Windows operating system.
• Excellent problem-solving abilities and attention to detail.
• Strong communication and collaboration skills to work effectively within a team.
Preferred Qualifications:
• Experience in developing applications for Windows operating system using C++, Python, or other programming languages.
• Knowledge of software testing methodologies and automated testing frameworks.