What are the responsibilities and job description for the Software Developer-C#-Net position at Cognizant?
Software Developer-C#-Net
Job Description
The Senior Software Development Engineer will be a key domain and technology contributor and will report to the Software Development Manager. This is an excellent position for someone who is currently a developer/technical leader and would like to be a part of a highly efficient and distributed software development team.
Job responsibilities for this position include (but are not limited to) the following:
· Author and implement software design specifications, take ownership of product components and features. Own and maintain the various subsystems within the product.
· Work with offshore development center resources if needed. Author, drive and validate design, test and cybersecurity artifacts as part of the standard development process using outsourced partners.
· Provide expertise and leadership in the review and validation of all software development deliverables ranging from requirements documentation, high level/detailed design, system architecture, test plans, test designs, test automation designs, test cases and test automation suite.
· Work with cross-functional product development teams (product development, product management, program management, and Delivery team) to define, refine and execute software testing to ensure delivery of high-quality product components.
· Be a thought leader and a software test practice champion within the R&D organization. Push the envelope on innovation by bringing forward new test ideas and processes for improving the efficiency of our execution and validation processes.
Qualifications / Required Skills and Experience:
· A BS/MS in Computer Science/Engineering. Strong technical/engineering background with the ability to analyze and solve difficult business problems in a complex domain.
· Requires a minimum of 6-10 years of hands on C#.NET experience building Windows Desktop Applications.
· 2-3 years of experience in memory management and performance of Windows Desktop Applications.
· Strong debugging and troubleshooting skills on Windows platform (C# / .NET / Windows 10 OS).
· 6 to 8 years of experience with software product design, development and testing for infrastructure software products.
· Well versed with Lean/Agile software development and testing principles used for high quality software development.
· Experience working with distributed / remote development and test resources to ensure timely and high-quality delivery of software releases is desirable.
· Experience working with AzureDevOps using Git or TFVC.
· Good understanding and working knowledge of Unit Testing Frameworks such as MSTest, NUnit or XUnit and Mocking frameworks such as MS Fakes, Moq. NMock.
· Prior experience with Wonderware System Platform / InTouch is desirable.
· Highly motivated self-starter with an innovative thinking bias.
· Strong verbal and written communication skills, with ability to articulate the problem and solution space to different kinds of audiences