Role summary
We are looking for a Senior .NET Architect to help redesign a mission-critical communication platform responsible for routing messages and files between internal systems and external partners.
You will play a key role in defining and delivering a modern, cloud-native architecture built on .NET and Azure, with strong requirements around high availability, resilience, and performance.
This role requires a strong technical expert who can not only design systems but also challenge technology choices, clearly articulate trade-offs (impacts, pros & cons), and stay up to date with the latest ecosystem evolutions.
What you'll do
-
Design and deliver modern integration services handling message and file ingestion, transformation, routing, and delivery (sync & async).
-
Define architecture decisions and provide clear insights on technology choices, trade-offs, and impacts.
-
Architect systems for extreme resilience and high availability in a zero-downtime environment.
-
Apply advanced resilience patterns: circuit breaker, retries with backoff, timeouts, idempotency, outbox/inbox, DLQs, bulkheads, sagas.
-
Design and implement event-driven architectures using Azure messaging services (e.g. Service Bus, Event Hubs) or similar pub/sub platforms.
-
Build high-quality .NET services (.NET 7/8, C#, ASP.NET Core, worker services, APIs) with strong focus on performance, security, and maintainability.
-
Design and deploy cloud-native workloads on Kubernetes (AKS/OpenShift), using container best practices and CI/CD pipelines.
-
Define and implement observability strategies (logging, tracing, monitoring) and contribute to SLOs and operational excellence.
-
Work in an agile environment, contributing to iterative delivery and continuous improvement.
-
Act as a technical leader and mentor, promoting engineering best practices within the team.
Minimum qualifications
-
Extensive experience in software engineering, including several years working on distributed, high-availability systems.
-
Strong expertise in .NET ecosystem (C#, .NET 7/8, async programming, dependency injection, testing).
-
Hands-on experience with Microsoft Azure (AKS, messaging services, storage, monitoring, CI/CD).
-
Proven experience designing event-driven architectures and understanding messaging patterns and trade-offs.
-
Strong knowledge of resilience and fault-tolerant design in distributed systems.
-
Experience with containers and orchestration (Docker, Kubernetes).
-
Solid experience with CI/CD pipelines and modern development practices (TDD, trunk-based development).
-
Ability to analyze, challenge, and justify technical decisions.
-
Autonomous, pragmatic, and able to operate in complex environments.
-
Professional English.
Nice to have
-
Experience with observability tools (OpenTelemetry, distributed tracing, etc.).
-
Knowledge of enterprise integration patterns and secure file transfer protocols.
-
Experience in regulated or high-availability environments.
-
Familiarity with high-throughput systems and performance testing.