Responsibilities:
- Design, develop, and maintain software applications using .NET 8 or .NET 6, C#, and ASP.NET Core WebAPI
- Collaborate with cross-functional teams to define requirements, specifications, and architecture
- Implement new features and enhancements based on technical specifications and user feedback
- Implement Clean Architecture principles to ensure code maintainability and scalability
- Utilize Domain Driven Design and Event-based architecture to build robust and scalable applications
- Integrate MongoDB for efficient data storage and retrieval
- Implement OpenID Connect and JWT Bearer tokens for API authorization
- Utilize AWS S3 for file storage and Nginx for reverse proxy and API Gateway
- Implement Eventstore for event sourcing and Postgresql for relational database management
- Containerize applications using Docker for easy deployment and scalability
Skills and Experience:
- 5+ years of experience in software development with demonstrated success in developing a variety of software systems
- 5+ years of experience in software development with expertise in .NET technologies
- Strong proficiency in C#, ASP.NET Core WebAPI, Clean Architecture, and Domain Driven Design
- Proficiency in API development, microservices architecture, Kubernetes, and Docker.
- Solid understanding of data modeling and object-oriented design principles
- Experience with event-based architecture and libraries such as Serilog, MediatR, FluentValidation, AutoMapper, Scrutor, Newtonsoft.Json, EPPlus, and NServicebus
- Familiarity with MongoDB, PostgreSQL, AWS S3, Nginx and Eventstore
- Should have implementation experience in Design Patterns like CQRS.
- Experience in writing Unit test cases using Nunit / NSubstitute is a plus.
- Excellent time management, communication, decision-making, presentation and organization skills with a Strong work ethic, commitment and teamwork.
Education and Experience:
- Bachelors or Masters from Premier Institutes preferred.
- Experience 5-12 years