Expertise

Technical areas of expertise

Technologies and approaches I use in production. Every area is backed by real projects in the portfolio.

.NET Backend

Core expertise

Modern ASP.NET Core APIs

Controller-based APIs on .NET 8 and .NET 10 with clear contracts documented via OpenAPI. Centralized error handling through middleware, policy-based authorization and health checks.

.NET 8/10ASP.NET CoreSwagger/OpenAPIJWTHealth Checks

Background Jobs & Async Flows

Hosted services, Quartz and queue-based jobs with cancellation support, bounded concurrency and retry-friendly synchronization.

IHostedServiceQuartz.NETasync/awaitCancellationToken

Data Access

Relational databases with EF Core and document models with the MongoDB driver; Repository and Unit of Work patterns, index and query optimization.

EF CoreMongoDB DriverLINQUnit of Work

AI & LLM Engineering

Next-gen product features

Provider-Agnostic AI Gateway

Adapter layer that unifies OpenAI, Gemini, OpenRouter and Hugging Face behind one interface. Models and providers change through configuration, avoiding vendor lock-in.

OpenAIGeminiOpenRouterHugging Face

Structured Outputs & Prompt Design

Typed LLM output validated against JSON schemas, system prompts editable from an admin panel and audience-specific prompt variants.

JSON SchemaSystem PromptsTyped Results

Chat Assistants & Memory

Production-ready assistants with per-session sliding-window memory, persona/expert rules, retries and controlled error responses.

Google.GenAIConversation MemoryRetry

Document & Speech Pipelines

Turning Tesseract OCR output into structured data with LLMs and speech-to-text workflows with Amazon Transcribe.

TesseractGeminiAmazon Transcribe

Observability & Cost Control

Logging every AI invocation and keeping latency and cost in check with concurrency limits, caching and retry strategies.

Invocation LogsCachingRate Limits

AI-Assisted Development

Agentic development with Claude Code and Codex; repository rule files (AGENTS.md/CLAUDE.md), custom skills, and codebase-aware AI workflows with MCP servers (Serena, Context7).

Claude CodeCodexMCP

Architecture & Design

Sustainable codebases

Clean / Onion Architecture

Domain, Application, Infrastructure and API layers with dependencies flowing inward, keeping code testable and extensible.

Clean ArchitectureOnionDDDSOLID

Multi-Tenant SaaS

Instance-per-tenant and domain-based tenant resolution models, per-tenant database isolation and a safe tenant context.

Multi-TenancyTenant ResolutionIsolation

Microservices & Consistency

Shared subscription, payment, file and identity services; idempotent operations, distributed locks and cache/database consistency.

MicroservicesIdempotencyDistributed LockRedis

Integrations

Third-party systems

ERP & e-Invoicing

Paraşüt, Mikro, Uyumsoft and Xentral integrations with resilient clients using token caching, 429 backoff and status synchronization.

ParaşütMikroUyumsoftXentral

Payment Systems

One-off payments, subscriptions and third-party customer/product/price synchronization with Stripe, PayPal, Paddle and iyzico.

StripePayPalPaddleiyzico

Notifications & Messaging

Firebase Cloud Messaging, SMTP, SMS and WhatsApp integrations with background-queue delivery.

FCMSMTPSMSWhatsApp

DevOps & Infrastructure

Getting code to production

Containers & Deployment

Multi-service environments with Docker and Docker Compose, scripted production artifact deployments, PM2 and GitHub Actions.

DockerComposeGitHub ActionsPM2

Linux Server Administration

Server provisioning, Nginx/Apache configuration, DNS and domain management, backups, performance tuning and security hardening.

LinuxNginxApacheDNS

MongoDB Replica Set & High Availability

Replica set of primary, secondary and arbiter nodes set up on Linux servers, with the primary running on AWS EC2. When a node goes down, a majority vote triggers an automatic election and the service keeps running; failover scenarios were tested and verified.

MongoDBReplica SetFailoverArbiterLinuxAWS EC2

AWS

Video processing and delivery with S3, MediaConvert and CloudFront; speech-to-text with Amazon Transcribe.

S3MediaConvertCloudFrontTranscribe

Tech stack

Languages
C#TypeScriptJavaScriptSQL (T-SQL)Python
Backend
.NET 8/10ASP.NET Core Web APIEntity Framework CoreLINQNode.jsRESTSOAP/WCFJWT/OAuth 2.0FluentValidationSwagger/OpenAPIHosted/Background ServicesQuartz.NETSignalR
AI & LLM
OpenAI APIGoogle Gemini (Google.GenAI)OpenRouterHugging Face InferencePrompt EngineeringStructured Outputs (JSON Schema)LLM Provider Abstraction / AI GatewayConversation MemoryAI Invocation LoggingOCR (Tesseract) + LLMSpeech-to-Text (Amazon Transcribe)Model Context Protocol (MCP)AI-Assisted Development (Claude Code, Codex)
Architecture
Clean/Onion ArchitectureDomain-Driven DesignMicroservicesMulti-Tenant SaaSRepository & Unit of WorkSOLIDIdempotency & Distributed LockingCaching Strategies
Data
MongoDBMS SQL ServerMySQLPostgreSQLRedisPrisma
Cloud & DevOps
DockerDocker ComposeLinux Server AdministrationNginxApacheIISAWS (S3, CloudFront, MediaConvert, Transcribe)GitHub ActionsPM2DNS/Domain Management
Integrations
ParaşütMikro ERPUyumsoft e-Fatura/e-ArşivXentral ERPStripePayPalPaddleiyzicoFirebase Cloud MessagingSMS/SMTP
Testing & Quality
xUnitMSTestMoqCode ReviewGit
Frontend (working knowledge)
ReactNext.jsReact Native/ExpoTailwind CSS