Senior .NET Backend / Full-Stack Engineer · Muscat, Oman
I've been building software since 2003. Most of my recent work is backend and platform engineering with C# and .NET: distributed services, messaging, real-time data, caching, identity, database-heavy systems, and reusable libraries.
I still work with Angular when a feature crosses the UI, but backend architecture and systems work are where I spend most of my time.
- C#, .NET 8/9/10, ASP.NET Core, ABP
- Clean Architecture, DDD, CQRS/MediatR, modular monoliths and microservices
- Kafka, RabbitMQ, Redis, SignalR, WebTransport, gRPC and WebSocket
- PostgreSQL, SQL Server, MongoDB, MySQL and SQLite
- OpenTelemetry, xUnit, BenchmarkDotNet, Docker, Kubernetes and CI/CD
- OAuth2/OIDC/JWT, OpenIddict and policy-based authorization
A multi-repository .NET 8/9/10 streaming project I've been building around channels, protocol contracts, data-source adapters, cluster messaging, recovery and client libraries.
The public repositories are split by responsibility rather than putting everything in one package:
- ThunderPropagator.BuildingBlocks - shared abstractions and infrastructure
- ThunderPropagator.Channels - chat, monitoring, notifications, demos and multiplayer/game channels
- ThunderPropagator.Feeviders - adapters for Kafka, RabbitMQ, NATS, MQTT, Pulsar, ActiveMQ, Redis, cloud messaging, gRPC, WebSocket, TCP/UDP and other transports
- ThunderPropagator.ClusterMessageBuses - pluggable inter-node message buses and fan-out implementations
- ThunderPropagator.RecoveryHandlers - snapshot recovery with Redis, MongoDB and PostgreSQL
- ThunderPropagator.Clients - client protocol and wire-format specification
- ThunderPropagator.Clients.DotNet - .NET client implementation
Recent Channels work includes server-authoritative session state, reconnect handling, scoring and request authorization for a real-time quiz channel, with concurrency and serialization tests around the state transitions.
IIIF.Manifest.Serializer.Net is a version-aware .NET serializer for IIIF Presentation API 2.0, 2.1 and 3.0.
The current codebase includes:
- IIIF Presentation, Image, Auth, Content Search, Change Discovery and Content State models
- W3C-style annotations and version conversion
- navPlace, Georeference and Text Granularity extension packages
System.Text.Jsoninteroperability- 557 unit tests plus 8 architecture tests
- roughly 82% line coverage for the core and extension packages
I've also been using the SDK to explore different persistence and change-tracking approaches:
- IIIF.POC.ChangeTrackingLab - object-graph changes and partial change sets
- IIIF.POC.PostgreSqlRelationalV3Store - EF Core/PostgreSQL relational mapping with JSONB for extension data
- IIIF.POC.EventSourcedManifestStore - append-only event streams with KurrentDB
- IIIF.POC.VersionLab - Presentation 2.x/3.0 detection and conversion
I'm also working on a private .NET 10 modular business platform under MinooTradingSPC. It covers areas such as accounting, billing, IAM, audit, customer/product/order management, notifications, search and scheduling, with shared CQRS, security, rate-limiting, export and workflow components.
The persistence layer is deliberately provider-oriented, with support across SQL Server, PostgreSQL, MySQL and SQLite where the module allows it.
- BlockChainLogging - append-only/tamper-evident logging experiment
- CaptchaWithSkiaSharp - CAPTCHA image generation with SkiaSharp
- PasswordGeneratorCLI - password generation library and CLI
- ZooKeeperDITester - distributed locking/DI experiment with ZooKeeper
- awesome-iiif - IIIF resources and references
Asl Al-Uroba · Senior .NET Full-Stack Developer · 2025-present
College admission and postgraduate systems, ABP/ASP.NET Core, PostgreSQL, Redis, Angular, caching, identity, background processing and internal .NET packages.
Creative Advanced Technologies · Senior Software Developer · 2022-2024
EarthLink Iraq fibre-optic service systems, university software and a .NET MAUI exam engine.
Alo Application · .NET Back-End Developer / Team Lead · 2021-2022
Real-time stock trading, Kafka, Lightstreamer and performance-sensitive market-data processing.
Before that I worked on MVNO/telecom systems, insurance, retail and manufacturing software, government tax services, travel software and real-estate systems.
I write about problems I've run into while building .NET systems, especially concurrency, messaging, security and performance.
- Website: kiarashminoo.com
- LinkedIn: linkedin.com/in/ahmadminoo
- GitHub: github.com/KiarashMinoo
- Email: ahmadminoo@gmail.com
I'm open to senior backend/platform roles, remote work, relocation, and open-source collaboration.



