Key Skills: C#, .NET, Entity Framework, ADO.NET, ASP.NET, MVVM, MVC, Azure/AWS/GCP, Angular, C++, DevOps, Unit Testing, Agile, OOP, Design Patterns, Software Configuration Management, Communication Skills.
Roles and Responsibilities:
- Responsible for the design of software solutions based on requirements and within the constraints of architectural/design guidelines.
- Derive software requirements and software functional specifications, validate software requirements, and provide software feasibility analysis and software effort estimation.
- Understand the requirements, user stories, high-level and low-level design, implementation, unit and integration testing to deliver high-quality products.
- Accurate translation of software architecture into design and code.
- Guide Scrum team members on all design topics and ensure implementation consistency against the design/architecture.
- Identification and implementation of (unit/integration/automation) tests to ensure the solution addresses customer requirements.
- Provide documentation (requirement/design/test specification) inputs, and ensure delivery conforms to organizational and project quality processes.
- Ensure integration and submission of the solution into the software configuration management system within committed delivery timelines.
- Guide the team in test automation design and support the implementation of the same.
Experience Requirement:
- 4-8 years of software development experience with strong expertise in C# and developing Windows applications.
- Advanced C# knowledge with a solid understanding of object-oriented design, programming principles, and design patterns.
- Experience in .NET development using C# .NET, Entity Framework, ADO.NET, ASP.NET, MVVM, and MVC.
- Hands-on experience in implementing and deploying solutions in one or more cloud environments (Azure / AWS / GCP).
- Experience in building web applications using Angular or other client-side frameworks.
- Working knowledge of unit testing frameworks and DevOps practices.
- Exposure to developing and debugging applications using C++ is an added advantage.
- Experience working in Agile/LEAN software development methodologies.
- Strong knowledge of software configuration management and DevOps concepts.
- Demonstrated ability to independently design, code, and troubleshoot complex components.
- Strong problem-solving and analytical skills.
- Effective communication with cross-functional teams and quick adaptability to new technologies and trends.
Education: B.Tech M.Tech (Dual), MCA