What are the responsibilities and job description for the Dotnet Developer position at ValueMomentum?
Job Title: .Net Developer
Primary skills: .Net, property and casualty insurance.
Location: Erie, PA(Onsite)
Responsibilities
- Build, and maintain efficient, reusable, and reliable code using ASP.NET Core and .NET 6 frameworks.
- Implement microservices architectures, utilizing a microservice chassis framework to streamline development.
- Expertise in Object-Relational Mapping (ORM) tools, such as Entity Framework, and adept in object-oriented design and design patterns.
- Integrate and manage Azure services including APIM, App Gateway, App Configuration, Key Vault, Service Bus, Event Hub, Cosmos DB, and SQL Database.
- Develop stored procedures in C# or other procedural languages, and work with distributed caching using Redis, Memcache, or similar frameworks.
- Proficient in building and managing microservices using the DAPR runtime to ensure scalable, resilient, and secure applications.
- Manage file systems in .NET, focusing on buffering, streaming, and various serialization frameworks.
- Implement communication protocols such as gRPC, REST, GraphQL, etc., and IoC frameworks.
- Oversee ASP.NET Core request pipelines and service models, ensuring efficient and secure applications.
- Implement robust authentication and authorization mechanisms using OAuth, SAML, ASP.NET Policy framework, etc.
- Design and develop resilient microservices and APIs, with experience in using the Polly framework for resilience and transient-fault handling.
Desired Skill, Experience, Qualifications, Certifications:
Must Have:
- Bachelor’s degree in computer science, engineering, or a related field.
- 5 years of experience in .NET development, including ASP.NET Core and .NET 6 .
- Demonstrated ability to design and build resilient microservices and APIs, including experience with the Polly framework.
- Strong understanding of ORM tools (e.g., Entity Framework), Object-Oriented Design, and Design Patterns.
- Strong understanding of .Net SOLID design principles.
- Strong understanding of .Net Low level and High-level design patterns such as Builder pattern, Factory pattern, Visitor pattern, SAGA pattern, CQRS pattern etc.
- Strong understanding of .Net, ASP.Net best practices, including exception/error handling best practices.
- Experience in .Net 6 features, especially LINQ
- Experience in Asynchronous programming in .Net, ASP.Net with Tasks.
- Proficiency in writing stored procedures in C# and working with distributed caching solutions.
- Extensive experience with Azure services and distributed systems.
- Solid experience with file systems in .NET, various serialization frameworks, gRPC, REST, GraphQL, and similar technologies.
- Knowledge of microservices architecture and containerization (Docker, Kubernetes) is desirable.
- Experience in implementing IoC frameworks, ASP.NET core request pipelines, and service models.
- Experience in ASP.Net Authentication/Authorization frameworks (JWT and OAuth2 etc.).
- Experience in writing effective Unit Test cases (Junit5 etc) with code coverage.
- Experience in ASP.Net Documentation with OpenAPI 3 specification.
- Strong knowledge on Clean Architecture and Clean code practices
- Excellent leadership, communication, and team management skills.
Good to Have:
- Insurance domain knowledge.
- Experience in developing Domain Driven Design patterns in .Net including Value Objects, Entities, and Domain Services.
- Good understanding of cloud native application development.
- Knowledge on Document management and generation systems/applications.
- Proficient with AWS native services such as TSC2, S3, RDS, Lambda, and AWS CLI or Azure services such as Virtual Machines, Blob Storage, Azure SQL Database, Azure Functions, and Azure CLI
- Knowledge of additional Azure or AWS services such as Azure App Service, Azure Logic Apps, and Azure Event Grid or AWS Elastic Beanstalk, AWS Step Function and Amazon EventBridge, which are beneficial for integrating and automating workflows.
- Experience with CI/CD pipelines.
- Familiarity with message brokers (e.g., RabbitMQ, Kafka, Azure Service Bus).
- Security-conscious development practices.