Architecting
Scalable Systems
with .NET
I am Armin Sadati, a Senior Backend Engineer specializing in C#, Cloud Native Architecture, and High-Performance Distributed Systems. I build code that lasts.
Tech Stack
Tools and technologies I use to bring ideas to life. Click on any card to learn about my specific experience and projects with that technology.
C# & .NET
The core of my development stack. Building type-safe, scalable backends.
ASP.NET Core & REST
Building robust and scalable web APIs.
Microservices
Designing distributed systems with clean architecture principles.
Domain-Driven Design
Tackling software complexity in the heart of the software.
SQL & EF Core
Data modeling, optimization, and ORM mastery.
Redis
High-performance caching and messaging.
Cassandra & MQTT
IoT data processing and NoSQL storage.
Elasticsearch
High-performance search and analytics engine.
Kafka
Distributed event streaming platform.
gRPC & RabbitMQ
Inter-service communication and reliable messaging.
Azure Cloud
Cloud-native deployment and infrastructure management.
TDD & Unit Testing
Test-Driven Development using xUnit and Moq.
Work Experience
My professional journey in the software industry.
Senior Software Engineer
May 2023 - Present- Working as a Senior Software Engineer at Mabna DP.
Senior Software Engineer
Nov 2022 - Apr 2023- Developing transportation fleet management software using C# and .NET Core 6 framework.
- Developing necessary APIs and configuring Swagger.
- Working with the IDP server and its tokens for API authentication.
- Researching and developing an ETL process to transfer GPS data to the server.
- Working with a stack of tools like Kafka, Emqx, Cassandra, and Redis databases.
- Participating in daily and weekly Scrum meetings and working in a dynamic and creative team of 30 members.
Senior Software Engineer
Feb 2022 - Oct 2022- Development of stock asset management software using .NET Core 5 and C#
- Using microservice architecture to communicate between services
- Utilizing APIs of financial market services such as OMS as dependent services
- Real-time processing of information between services using GRPC and Kafka
Software Engineer
Sep 2020 - Jan 2022- Developing software applications in various fields, including inventory management, truck entry and exit control to the warehouse, and security patrols at the client's request.
- Utilizing microservices architecture to facilitate communication between the developed software applications.
- Utilizing .NET Core 5 and C# as the programming language and SQL Server database.
- Employing the Domain-Driven Design (DDD) methodology to separate the software applications from each other.
Software Engineer
Apr 2019 - Mar 2020- Developing a Windows program for booking and managing hospitals and clinics using WPF.
- Developing other programs using WPF, such as accounting and inventory management.
- Utilizing SQL Server and C# for software development.
- Implementing microservice architecture for communication between different services.
- Providing 90% code coverage through unit tests and integration tests by xUnit.
Software Engineer
Feb 2017 - May 2018- Developing an integrated system for searching computer ranking games for Persian speakers.
- Integrating information from multiple databases to synchronize them in searches.
- Using HTML, CSS, and jQuery to implement the UI in the front-end with MVC framework.
- Participating in weekly and monthly Scrum meetings and coordinating with other teams within the organization.
Software Engineer
Nov 2015 - Jan 2017- Simultaneous development of two software applications, one for electronic document management and the other for working with biometric hardware.
- Working with SQL Server queries in the faculty management software was very challenging.
- The software stack consisted of C# and SQL Server for back-end and ASP.NET WebForms for front-end.
- The biometric hardware software was developed for official document offices.
- Hardware was sourced from various companies in Europe and America, and customized software was developed for them.
Interactive Playgrounds
Step into realistic live sandboxes to learn, experiment, and practice with key backend technologies directly in your browser.
Redis CLI Playground
An interactive, client-side Redis command-line interface. Practice connection diagnostic commands, key-value storage manipulation, lists, sets, hash sets, and view real-time data status feedback instantly.
Git Interactive Sandbox
An interactive workspace simulator to learn Git branching, staging, committing, and fast-forward merging. Includes a real-time visual commit DAG graph to trace your branches dynamically.
Linux CLI Playground
An interactive, real-time Linux command shell sandbox. Practice system diagnostics, directory structuring, permission modifications, processes supervision, and core network configurations instantly.
RabbitMQ Message Queue
A visual dashboard playground for messaging architecture. Practice configuring exchanges, message routing, queues binding, consumer delivery acknowledgements, and dead-letter channels dynamically.
Interactive Learning
Master programming languages and software engineering architectures through structured, comprehensive, and example-driven tutorials designed for junior to senior tracks.
C# Senior Masterclass
An intensive, example-rich guide structured for all career stages. Learn C# from absolute syntax foundations to high-level asynchronous pipelines, multi-threading, LINQ optimizations, and enterprise design patterns.
System Design & Patterns
Master SOLID principles, clean architecture pipelines, CQRS patterns, distributed saga coordinators, and enterprise messaging topologies in modern .NET systems.
Latest Articles
Thoughts on coding, architecture, and technology.
Deep Dive into Async/Await in C#
Understanding the state machine behind the syntactic sugar and how to avoid deadlocks in your .NET applications.
Clean Architecture with .NET 10
Structuring your solution for testability and independence from frameworks using the latest .NET features.
Optimizing EF Core for High Load
Tips and tricks to squeeze the most performance out of Entity Framework Core without writing raw SQL.
Microservices vs Monoliths in .NET 10
When to choose microservices over a monolithic architecture, and how .NET 10 simplifies the transition.
Mastering Minimal APIs in .NET 10
Building fast, lightweight HTTP services without the overhead of MVC controllers.
High-Performance Logging in .NET
How to implement zero-allocation logging using source generators in .NET.
Validate Certificate
Enter your unique certificate code (e.g., LWA-773912 or LNX-...) to verify its authenticity and details.
Armin Sadati
Senior Software Engineer
As a skilled software developer with over 8 years of experience in .NET and C#, I have successfully delivered top-notch software solutions in multiple industries, including banking, logistics, and healthcare. My expertise includes working with cutting-edge technologies like Cassandra, SQL Server, Kafka, and Redis, RabbitMQ. I possess robust software testing, debugging, and maintenance skills, ensuring that all my projects meet the highest quality and functionality standards. My ability to adapt quickly to new situations and technologies has been crucial to my success as a developer. I am a team player with excellent communication and interpersonal skills, making me an ideal candidate for any software development position.

Core Systems Engineering
Robust testing, debugging, and maintaining software meeting top quality and reliability standards.
Distributed Topologies
Scaling high-throughput architectures using Kafka, RabbitMQ, Redis, Cassandra, and SQL Server.
Rapid Adaptability
Quickly mastering cutting-edge stacks and architectural patterns to address critical business goals.
Collaborative Leadership
Excellent communication and interpersonal skills suited for exceptional engineering positions.