Skip to content
آماده همکاری فریلنسی

امیرمحمدمیرزایی‌راد

مهندس بک‌اند

مشهد، ایران · UTC+3:30

۵ سال طراحی سیستم‌های توزیع‌شده، میکروسرویس‌های مقیاس‌پذیر، و APIهای پرکاربرد با TypeScript، Node.js، NestJS و Python — و اکنون ساخت بک‌اندهای هوشمند با RAG.

reel.mp4

// ۰۱. اصول

سیستم، نه سینتکس. اول معماری، بعد کد.

پنج سال تجربه در فین‌تک، لجستیک، مدیریت ورزشی و AI SaaS یک چیز را روشن کرد: مهندسی نرم‌افزار به معنای حجم کدهای نوشته‌شده نیست، بلکه به معنای وضوح معماری تعریف‌شده است. من سیستم‌هایی می‌سازم که به طور پیش‌فرض مقاوم هستند، نه با وصله‌کاری. رویکرد من حذفی است. با پیچیدگی مسئله شروع می‌کنم و تمام موارد غیرضروری را حذف می‌کنم تا فقط عملکرد خالص باقی بماند. هسته رویدادمحور، قراردادهای تایپ‌شده سرتاسری، و پایگاه داده‌ای که پیش از مقصر دانستن کد، تنظیم می‌شود. این طراحی سوئیسی است که در سیستم‌های توزیع‌شده اعمال شده است.

+۵
سال تجربه
۱۱
سرویس در محیط عملیاتی
۸
حوزه مهارتی
// build.log
const engineer = {
  role: "مهندس بک‌اند",
  stack: ["TypeScript", "NestJS", "Python", "PostgreSQL", "Kafka"],
  location: "مشهد، ایران",
  status: "سیستم‌ها فعال",
};

// ۰۳. توانمندی‌ها

۸ حوزه. یک رشته.

فهرست کامل — هر حوزه، هر ابزار، شفاف و بدون ابهام.

زبان‌ها

4

TypeScript

استفاده شده در
UnoPay

JavaScript

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Python

استفاده شده در
IPG SandboxLinkschin AggregatorKarStack

SQL

استفاده شده در
هنوز پروژه‌ای ثبت نشده

فریم‌ورک‌ها و زمان‌اجرای

5

Node.js

استفاده شده در
UnoPay

NestJS

استفاده شده در
Novent Backend

FastAPI

استفاده شده در
IPG SandboxLinkschin AggregatorKarStack

React

استفاده شده در
Linkschin Aggregator

Next.js

استفاده شده در
IPG SandboxLinkschin AggregatorKarStack

APIها و پروتکل‌ها

4

REST

استفاده شده در
هنوز پروژه‌ای ثبت نشده

GraphQL

استفاده شده در
هنوز پروژه‌ای ثبت نشده

gRPC

استفاده شده در
Novent Backend

tRPC

استفاده شده در
هنوز پروژه‌ای ثبت نشده

پایگاه‌های داده و کش‌ها

7

PostgreSQL

استفاده شده در
Novent Backend

SQL Server

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Redis

استفاده شده در
Novent Backend

PGVector

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Qdrant

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Pinecone

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Milvus

استفاده شده در
هنوز پروژه‌ای ثبت نشده

هوش مصنوعی و LLMها

11

RAG

استفاده شده در
هنوز پروژه‌ای ثبت نشده

LangChain

استفاده شده در
هنوز پروژه‌ای ثبت نشده

LangGraph

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Model Context Protocol

استفاده شده در
هنوز پروژه‌ای ثبت نشده

OpenAI Agents SDK

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Tool Calling

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Function Calling

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Structured Outputs

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Hybrid Search

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Semantic Search

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Embeddings

استفاده شده در
هنوز پروژه‌ای ثبت نشده

پیام‌رسانی و استریمینگ

3

Apache Kafka

استفاده شده در
هنوز پروژه‌ای ثبت نشده

BullMQ

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Debezium CDC

استفاده شده در
هنوز پروژه‌ای ثبت نشده

معماری و الگوها

8

سیستم‌های توزیع‌شده

استفاده شده در
هنوز پروژه‌ای ثبت نشده

میکروسرویس

استفاده شده در
هنوز پروژه‌ای ثبت نشده

طراحی دامنه‌محور (DDD)

استفاده شده در
هنوز پروژه‌ای ثبت نشده

CQRS

استفاده شده در
Novent Backend

معماری شش‌ضلعی (Hexagonal)

استفاده شده در
هنوز پروژه‌ای ثبت نشده

معماری رویدادمحور

استفاده شده در
هنوز پروژه‌ای ثبت نشده

الگوی Transactional Outbox

استفاده شده در
هنوز پروژه‌ای ثبت نشده

معماری تمیز (Clean)

استفاده شده در
هنوز پروژه‌ای ثبت نشده

DevOps و ابزارها

11

Docker

استفاده شده در
IPG Sandbox

Kubernetes

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Linux

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Nginx

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Git

استفاده شده در
هنوز پروژه‌ای ثبت نشده

CI/CD

استفاده شده در
هنوز پروژه‌ای ثبت نشده

MinIO (سازگار با S3)

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Jest

استفاده شده در
هنوز پروژه‌ای ثبت نشده

Playwright

استفاده شده در
Linkschin Aggregator

تست یکپارچگی

استفاده شده در
هنوز پروژه‌ای ثبت نشده

تست انتها به انتها

استفاده شده در
هنوز پروژه‌ای ثبت نشده

// ۰۲. تاریخچه

مسیر حرفه‌ای

چهار سال ساخت سیستم در فین‌تک، ورزش، لجستیک و AI SaaS — از سرویس‌های بک‌اند تا رهبری کامل یک پلتفرم.

مهندس فول‌استک (پروژه انفرادی)

مهر ۱۴۰۴ — بهمن ۱۴۰۴

پلتفرم چت‌بات هوش مصنوعی (Chatterbot)

TYPESCRIPTNESTJSPYTHONFASTAPIKAFKA

طراحی و معماری یک پلتفرم چندمستاجره و آماده‌ی تولید هوش مصنوعی (AI SaaS) شامل ۱۱ میکروسرویس مستقل NestJS با پیروی از اصول طراحی دامنه‌محور (DDD)، CQRS و معماری شش‌ضلعی (Hexagonal). پیاده‌سازی پایپ‌لاین ماژولار تولید تقویت‌شده با بازیابی (RAG) با استفاده از FastAPI، LangChain، LangGraph و پروتکل MCP، با پشتیبانی از مدل‌های OpenAI، Anthropic و Ollama همراه با Tool Calling، Structured Outputs، جستجوی ترکیبی (Hybrid Search) و Reranking. یکپارچه‌سازی ارتباط فرانت‌اند و بک‌اند از طریق SDK مشترک TypeScript با tRPC برای APIهای کلاینت و gRPC بین ۱۱ سرویس توزیع‌شده. پیاده‌سازی معماری رویدادمحور با Apache Kafka، Debezium CDC و الگوی Transactional Outbox برای انتشار مطمئن رویدادها و سازگاری قوی داده‌ها. یکپارچه‌سازی PostgreSQL، PGVector، Qdrant، Pinecone و Milvus برای جستجوی معنایی مقیاس‌پذیر و بازیابی اسناد برداری. راه‌اندازی محیط‌های توسعه مبتنی بر Docker و گردش‌کارهای استقرار آماده Kubernetes با پایپ‌لاین‌های CI/CD برای تمام سرویس‌ها.

مهندس فول‌استک

تیر ۱۴۰۴ — شهریور ۱۴۰۴

هیئت تکواندو تهران

NODE.JSNESTJSPOSTGRESQLREACTNEXT.JS

توسعه‌ی پلتفرم رسمی مدیریت ورزشکاران استان با پشتیبانی از بیش از ۴۰,۰۰۰ ورزشکار ثبت‌نام‌شده، ۴۰۰+ تورنمنت و حدود ۱,۰۰۰ مربی و داور. ایجاد فرآیندهای ثبت‌نام مقیاس‌پذیر برای مسابقات انفرادی، تیمی و گروهی و تولید خودکار جدول مسابقات برای بیش از ۴۰۰ رویداد. ارائه‌ی داشبوردهای مدیریتی امن شامل گزارش‌دهی، زمان‌بندی، بلیط‌فروشی و مدیریت دسترسی مبتنی بر نقش (RBAC). دیجیتالی‌سازی فرآیندهای ثبت‌نام ورزشکاران و مدیریت مسابقات استانی، جایگزین فرآیندهای دستی در سراسر سازمان.

توسعه‌دهنده بک‌اند

دی ۱۴۰۲ — خرداد ۱۴۰۴

دال

NODE.JSPOSTGRESQLSQLPOSTGRES FDWDOCKER

رهبری مهاجرت بیش از ۱۰۰,۰۰۰ رکورد مالی تولید به یک طرح‌واره‌ی بازطراحی‌شده‌ی PostgreSQL با حفظ کامل یکپارچگی داده‌ها. بهینه‌سازی بیش از ۳۰ گزارش SQL و ۱۰ داشبورد مدیریتی از طریق استراتژی‌های ایندکس‌گذاری، نماهای PostgreSQL، تنظیم کوئری‌ها و افزونه‌ی Foreign Data Wrappers (FDW). توسعه‌ی راهکارهای گزارش‌دهی بین پایگاه‌داده‌ای مبتنی بر PostgreSQL FDW پوشش‌دهنده بیش از ۱۰۰,۰۰۰ رکورد مالی در پایگاه‌های داده تولید. همکاری در تیم چابک ۵ نفره برای تحویل APIهای بک‌اند و خدمات مالی پلتفرم فین‌تک سازمانی.

مهندس فول‌استک

تیر ۱۴۰۱ — آذر ۱۴۰۲

پارس‌سازه

NODE.JSSQL SERVERREACTTYPESCRIPT

مدرن‌سازی سیستم‌های قدیمی حسابداری و مدیریت انبار شامل بیش از ۱,۰۰۰,۰۰۰ رکورد مالی و انبارداری در ۵ انبار مختلف. بهینه‌سازی کوئری‌های SQL Server و سرویس‌های بک‌اند برای بهبود عملکرد گزارش‌دهی در فعالیت‌های مالی حیاتی کسب‌وکار. ارائه‌ی پایپ‌لاین‌های خودکار گزارش‌دهی برای پردازش بیش از ۱ میلیون رکورد عملیاتی جهت حسابرسان و ذینفعان داخلی. جایگزینی ماژول‌های قدیمی برنامه با معماری بک‌اند مقیاس‌پذیر برای ساده‌سازی نگهداری و توسعه آینده.

توسعه‌دهنده بک‌اند

آذر ۱۴۰۰ — خرداد ۱۴۰۱

اسپاد

NODE.JSPOSTGRESQLREST APISDOCKER

پیاده‌سازی سرویس‌های بک‌اند برای پشتیبانی از فرآیندهای رزرو دیجیتال، ثبت‌نام و مدیریت تور. توسعه‌ی APIهای RESTful برای پشتیبانی از مدیریت مشتریان، پردازش رزروها و عملیات زمان‌بندی. بهینه‌سازی کوئری‌های پایگاه‌داده و معماری سرویس‌ها برای بهبود نگهداری‌پذیری برنامه و عملکرد بک‌اند. همکاری با مهندسان فرانت‌اند برای تحویل قابلیت‌های آماده تولید در محیط توسعه چابک.

مدیریت بازرگانی

۱۳۹۸ — ۱۴۰۰

دانشگاه اصفهان

BUSINESS MANAGEMENTACADEMIA

گذراندن دو سال از دوره‌ی کارشناسی پیش از انصراف برای دنبال کردن مسیر حرفه‌ای مهندسی نرم‌افزار به صورت تمام‌وقت.

پروژه‌ها

پروژه‌ها

محصولات، رابط‌ها و سیستم‌هایی که انتها به انتها ساخته شده‌اند.

01/

UnoPay

Fintech & SDK

TYPESCRIPTSDKEDGEPAYMENTS
UnoPay
مرور کلی

UnoPay solves the fragmentation and brittle integration challenges of Iranian payment gateways by providing a strongly-typed, single-entrypoint client architecture. Built entirely on standard Web Fetch primitives with zero external runtime dependencies, it runs identically in Vercel Edge, Cloudflare Workers, Node.js 18+, Bun, and Deno.

معماری

Pluggable Adapter Pattern & Universal Fetch Runtime

The SDK centers on the UnoPay orchestrator client parameterized over configured gateway keys. Each payment provider implements a standardized GatewayAdapter interface exposing uniform createPayment and verifyCallback signatures. Provider-specific payload quirks, error codes, and currency variations are isolated inside adapters, preventing external leakage.

نکات کلیدی
  • Universal Runtime: 100% standard Fetch API compatible with Cloudflare Workers, Vercel Edge, Bun, Deno, and Node.js.
  • Strict Zero-Any Typing: Gateway identifiers and response schemas are strictly inferred and autocompleted.
  • Automatic Currency Normalization: Seamlessly handles IRR, IRT, and TOMAN conversions.
استک
TYPESCRIPTSDKEDGEPAYMENTSNODE.JSBUNDENO
02/

IPG Sandbox

Developer Tooling & Testing

DOCKERFASTAPIPYTHONNEXT.JS
IPG Sandbox
مرور کلی

Testing payment workflows in Iranian software development has historically required live test credentials, manual card simulations, or unstable staging endpoints. IPG Sandbox is a zero-setup, self-hosted emulation suite that mirrors the REST and SOAP APIs of major payment gateways (Zarinpal, IDPay, Behpardakht Mellat), allowing developers to test approve, decline, timeout, refund, and verify-fail scenarios deterministically in local dev and CI/CD pipelines.

معماری

Dual-Plane Simulation Engine with Deterministic State Machine

Architected into a high-performance Python FastAPI engine and a Next.js inspection dashboard. The engine intercepts standard gateway endpoints, models transactions through a persistent state machine, and evaluates header-driven scenario rules (X-Sandbox-Scenario) without modifying production code under test.

نکات کلیدی
  • 18-Cell Scenario Matrix: 6 realistic outcomes (approve, decline, timeout, refund, pending_settle, verify_fail) across 3 gateway adapters.
  • Zero External Dependencies: Runs fully offline via Docker Compose without external internet access or credit cards.
  • Fault-Injection via Headers: Non-invasive testing without changing application business logic.
استک
DOCKERFASTAPIPYTHONNEXT.JSTESTINGMOCK
03/

Linkschin Aggregator

Data Extraction & Streaming

NEXT.JSFASTAPIPYTHONTURBOREPOسورس بسته
Linkschin Aggregator
مرور کلی

Linkschin is a high-throughput search and media aggregator designed to extract direct download links, split RAR game archives, and audio previews from complex Iranian media portals without routing media bandwidth through the server. Built as a unified Turborepo monorepo uniting a Next.js web application with an asynchronous Python FastAPI extraction engine.

معماری

Decoupled Headless Extraction & Direct Streaming Pipeline

Designed with strict separation between link discovery and media delivery. The backend handles distributed web scraping, anti-bot bypass, archive structure parsing, and link resolution, while direct file transfers stream strictly between the client and upstream CDNs, eliminating server bandwidth bottlenecks.

نکات کلیدی
  • Zero-Proxy Bandwidth Architecture: Server processes only lightweight JSON metadata while media downloads stream directly from CDNs.
  • Multi-Part Archive Intelligence: Automatically groups split game volumes and identifies required archive passwords.
  • Turborepo Polyglot Monorepo: Orchestrates Node.js/TypeScript frontend and Python backend tooling seamlessly.
استک
NEXT.JSFASTAPIPYTHONTURBOREPOREACTPLAYWRIGHT
04/

KarStack

Job Platform & Aggregator

NEXT.JSFASTAPIPYTHONSQLMODELسورس بسته
KarStack
مرور کلی

KarStack is an end-to-end recruitment platform and career intelligence aggregator. It continuously crawls and normalizes tech job postings across Iranian hiring boards into a centralized database, offering advanced search filters (tech stack, salary range, remote status, seniority), applicant tracking, and administration tools.

معماری

Polyglot Monorepo with Relational Ingestion Engine

Structured as a Turborepo monorepo housing a Python FastAPI REST API with SQLModel/PostgreSQL and three Next.js applications (Public Web, User Dashboard, Admin Dashboard). Shared UI design tokens, Radix UI primitives, and TypeScript types are managed in shared workspace packages.

نکات کلیدی
  • Structured Job Normalization: Unifies disparate posting formats into a clean schema with parsed skill requirements.
  • Multi-Workspace Monorepo: Single repository coordinating 3 Next.js applications and shared UI design system packages.
  • Strict Postgres Target: Built specifically for PostgreSQL 17 with psycopg3 driver for maximum query performance.
استک
NEXT.JSFASTAPIPYTHONSQLMODELTAILWINDTURBOREPORADIX-UI
05/

Novent Backend

Enterprise Microservices

NESTJSKAFKAPOSTGRESQLREDISسورس بسته
Novent Backend
مرور کلی

Novent Backend is an enterprise-grade distributed microservices platform engineered for high-concurrency event handling and financial transactions. Utilizing Hexagonal Architecture (Ports and Adapters) with Command Query Responsibility Segregation (CQRS), it decouples domain logic from external transport layers while ensuring sub-millisecond data synchronization via Apache Kafka and Debezium Change Data Capture (CDC).

معماری

Hexagonal (Ports & Adapters) Microservices with CQRS & Event-Driven CDC

Composed of an API Gateway, Core Business Service, and Financial Service communicating via gRPC and Kafka. Database changes to PostgreSQL are streamed in real-time by Debezium into Kafka topics, where search workers ingest them into Meilisearch, maintaining eventual consistency without application-level double writes.

نکات کلیدی
  • Strict Hexagonal Architecture: Complete decoupling of Domain, Application, Infrastructure, and Presentation layers.
  • CQRS Command/Query Separation: Separates read-heavy query pipelines from write-heavy command handlers.
  • Change Data Capture (CDC): Debezium connector monitoring Postgres WAL for reliable, atomic event propagation without dual-write bugs.
استک
NESTJSKAFKAPOSTGRESQLREDISDEBEZIUMMEILISEARCHCQRSGRPC

نوشته‌ها

یادداشت‌هایی از کار تحویل‌شده

یادداشت‌های بلندتر درباره‌ی ساخت سیستم و تصمیم‌های پشت آن.

// process.log

از ایده تا تولید

هر پروژه یک مسیر مشخص دارد: فهم مسئله، تعریف مرزها، و تحویل چیزی که واقعاً اجرا می‌شود.

01

کشف

فضای مسئله را ترسیم کنید، سیستم موجود را بررسی کنید و محدودیت‌ها را پیش از نوشتن کد روشن کنید.

02

معماری

ماژول‌ها، قراردادها و جریان داده را تعریف کنید. الگوها را بر اساس پیچیدگی انتخاب کنید، نه مد روز.

03

پیاده‌سازی

به صورت برش‌های عمودی بسازید. یک مسیر کامل را پیش از گسترش دامنه، انتها به انتها تحویل دهید.

04

رصد

لاگ ساخت‌یافته، متریک و بررسی سلامت همراه اولین استقرار می‌آیند. چیزی که قابل رصد نباشد، تمام نشده است.

05

استقرار

CI/CD با محیط‌های تکرارپذیر و مسیر بازگشتی که آزمایش شده باشد، نه فرض شده.

06

تکرار

نتیجه را اندازه بگیرید، گلوگاه را رفع کنید و بدهی فنی را آگاهانه پرداخت کنید.

07

مستندسازی

ثبت تصمیم‌ها و راهنماهای اجرا تا سیستم بدون زمینه‌ی سازنده‌اش هم زنده بماند.

زمان پاسخگویی: کمتر از ۲۴ ساعت

با من در تماس باشید

ایده‌ای دارید؟ بسازیمش.

برای معماری بک‌اند، سیستم‌های توزیع‌شده و محصولات مبتنی بر هوش مصنوعی آماده همکاری هستم. بگویید چه می‌سازید تا با یک برنامه مشخص پاسخ دهم.

منطقه زمانی: UTC +3:30 (آسیا/تهران)