Design, develop, and maintain efficient, reusable, and reliable C# code.
Implement performance and quality modules.
Identify bottlenecks and bugs, and devise solutions to mitigate and address these issues.
Help maintain code quality, organization, and automatization.
Collaborate with the team to manage project priorities, deadlines, and deliverables within an Agile framework.
Create scalable and maintainable unit tests, and adopt Test-Driven Development methodologies to ensure software quality.
Requirements
Bachelor’s degree in Computer Science, Engineering, or a related field.
Minimum 10-15 years of experience in software development, specifically with back-end technologies.
Strong knowledge of .NET framework and C#.
Proficient in RESTful API development and Windows Services development.
Solid understanding of object-oriented programming (OOP) and design patterns.
Experience with unit testing and familiarity with Test-Driven Development (TDD).
Experience working in an Agile environment.
Experience with build pipelining and CI/CD practices, preferably Jenkins.
Preferred: Experience with Windows Forms development.
Preferred: Knowledge of telephony technologies, protocols, and standards such as SIP, VoIP, E.164 Dial plans, QoS, TCP, UDP, RTP, SIP, ACD, FreeSwitch, IVR, Speech Recognition & Natural Language Processing, IM/Presence.
Preferred: Experience building integrated Contact Center workflows or applications with understanding of CTI and Contact Center API’s, Avaya, Cisco, Unify.