We are seeking a Senior .NET Developer to take ownership of complex bounded contexts on a greenfield, multi-tenant platform built on .NET 8, Clean Architecture and MediatR/CQRS.
Beyond delivering features, you will shape backend patterns, mentor mid-level engineers and ensure the codebase stays testable, observable and secure-by-design across the products bounded contexts.
Responsibilities
- Design and implement domain-driven bounded contexts using MediatR, FluentValidation and CQRS.
- Define the Dapper-first + EF Core data-access strategy with a clean repository / adapter pattern.
- Implement ambient multi-tenancy (e.g. an ICnpContext-style context flowing through the MediatR pipeline).
- Integrate OIDC authentication via Duende IdentityServer and typed feature flags via Microsoft.FeatureManagement.
- Ensure no secrets live in source or images, consuming configuration from Azure Key Vault.
- Drive test-first development with xUnit + FluentAssertions and meaningful coverage gates.
- Instrument services with OpenTelemetry and Application Insights for unified traces, metrics and logs.
- Mentor developers through pairing, code reviews and design discussions.
Required technical skills and competencies
- 6+ years of C# / .NET development with strong .NET 8 / ASP.NET Core expertise.
- Deep experience with MediatR, CQRS and FluentValidation in production systems.
- Strong data-access skills across Dapper and EF Core, plus advanced SQL Server / T-SQL.
- Proven application of Clean Architecture and Domain-Driven Design.
- Experience with OIDC / OAuth2 authentication flows.
- Test-first discipline with xUnit / FluentAssertions and CI/CD on Azure DevOps.
Must have skills
- Expert .NET 8 / ASP.NET Core with MediatR, CQRS and FluentValidation.
- Solid Dapper + EF Core and advanced SQL Server skills.
- Demonstrated Clean Architecture / DDD experience on real systems.
- Track