An Agile developer, focusing on sustainable development by exercising good estimation, effective branching strategies for managing code, automated testing to protect quality, and continuous deployment to get faster feedback.
Collaborate directly with a cross-functional team of Developers, QA, Product Managers, and other stakeholders to facilitate the design and development process.
Own components of product and produce a well-thought-out architecture that is scalable, performant, secured and highly reliable.
Prepare detailed design document including Class diagram, sequence diagram, interface specification, persistence model, screen mockups where required.
Implement modules ensuring best coding practice.
Perform code reviews of components & modules with recommendation around best coding practices.
Assist Operations / Support team in resolving Production Issues.
Knowledge And Experience
BS or MS degree in Computer Science or a related technical field.
7+ years of software development experience using Object Oriented design for transactional systems using C#, .NET, .NET core, Web API, MVC, SQL, MSSQL, Entity Framework, IIS, PowerShell, and Git.
Solid foundation in computer science with strong competency in data structures, algorithms, databases.
Hands on experience with designing and implementing SDKs using multi-threading.
Hands-on experience with CI/CD, design reviews, code reviews, unit testing, integration/system testing, monitoring, alerting, agile development practices.
Experience with REST architectural patterns and experience in building, exposing, consuming RESTful services will be nice to have.
Proven success in designing robust and scalable production systems.
Strong communication skills, able to communicate effectively with developers, project managers, QA, and the leadership team.