سجاد ثروت‌جو

مهندس Full-Stack و راهبر فنی — سیستم‌های توزیع‌شده · Go و NestJS · Vue و Flutter · مالکیت محصول

چهارده سال است سیستم می‌سازم — از سامانه‌های داخلی یک شرکت مهندسی تا زنجیرهٔ مالی وابسته به بانک تجارت. کاری که واقعاً بلدم این است: یک حوزهٔ مبهم را به مرزهای روشن، قرارداد داده و ملاک پذیرش تبدیل کنم، بعد خودم پیاده‌اش کنم. بک‌اند خانهٔ من است، فرانت‌اند را تا انتها می‌برم، و تیم را هم برده‌ام.

همچنین شناخته‌شده به: سجاد ثروت‌جو، سجاد ثروتجو، سجاد ثروت جو، ثروت‌جو، ثروتجو، ثروت جو، Sajjad Servatjoo، Sajad Servatjoo، Sajjad Servatjou، Servatjoo، TheServat

سابقهٔ کاری

تجارت شایان

توسعه‌دهندهٔ Full-Stack (مهر ۱۴۰۴ — اکنون)

مالکیت سرتاسری سامانه‌های مالی زنجیرهٔ تأمین — از دامنهٔ Go تا داشبورد Vue، و از مهاجرت تا رفع حادثهٔ تولید.

  • سامانهٔ صندوق (دفترکل کیف پول): دفترکل دوطرفهٔ تغییرناپذیر برای ریال، با Go و PostgreSQL و معماری تمیز. ledger مرجع واحد است و هر مانده فقط یک projection مشتق از آن است که پیوسته reconcile می‌شود — قاعدهٔ طراحی: درستی مالی بر سادگی توسعه مقدم است.
  • موتور ثبت دوطرفهٔ مشترک با idempotency مبتنی بر UUIDv5 و replay امن؛ dispatcher الگوی outbox با SKIP LOCKED، exponential backoff و dead-letter queue.
  • سرویس reconciler با leader election که integrity invariant و audit chain را پیوسته بررسی می‌کند و پارتیشن‌ها را نگهداری می‌کند.
  • داشبورد Vue 3 با TanStack Query/Table/Virtual، Pinia، ECharts و تقویم شمسی؛ با مرزهای معماری که enforce می‌شوند (eslint-plugin-boundaries و dependency-cruiser)، تست accessibility با axe-core، و بودجهٔ bundle size.
  • کار روی هر دو استک فرانت‌اند تیم: React برای سامانه‌های موجود، Vue برای صندوق و داشبوردهای جدید.
  • تحلیل و رفع حوادث مالی واقعی در تولید — ریشه‌یابی پرداخت‌های تکراری، تطبیق مانده با بانک، و بازیابی دفترکل — و مستندسازی هر کدام تا قابل تکرار نباشند.

مدیر فنی (فروردین ۱۴۰۳ — مهر ۱۴۰۴)

مسئول تیم فنی، اولویت‌گذاری، استاندارد کد و رابطهٔ فنی با ذی‌نفعان بانکی.

  • ترجمهٔ خواستهٔ ذی‌نفعان بانکی به دامنه، مرز سرویس و ملاک پذیرش قابل آزمون — در عمل ترکیبی از مدیر فنی و Product Owner.
  • راهبری برنامهٔ چندسرویسی زنجیرهٔ تأمین مالی: صورتحساب، پرداخت، اعتبارسنجی، امضا، تشخیص تقلب، احراز هویت و API gateway با کشف خودکار سرویس‌ها.
  • معماری microfrontend: هر سرویس رابط Vue خودش را دارد و یک shell واحد بر اساس دسترسی کاربر آن‌ها را سوار می‌کند — تیم‌ها می‌توانند مستقل تحویل بدهند.
  • اولویت‌گذاری میان بدهی فنی و قابلیت جدید، و دفاع از آن اولویت‌ها با استدلال هزینه به‌جای سلیقه.
  • راهبری و بازبینی کد تیم، و جایگزینی سبک شخصی هر توسعه‌دهنده با الگوهای مشترکی که pipeline CI آن‌ها را enforce می‌کند.

توسعه‌دهندهٔ ارشد بک‌اند (اردیبهشت ۱۴۰۱ — فروردین ۱۴۰۳)

ساخت سامانهٔ زنجیرهٔ مالی «اکوتام» وابسته به بانک تجارت با NestJS.

  • پیاده‌سازی دامنهٔ مالی روی NestJS و پایگاه دادهٔ رابطه‌ای — جایی که خطای محاسبه قابل چشم‌پوشی نیست و هر تراکنش باید قابل ردیابی بماند.
  • کار زیر محدودیت‌های بانکی: یکپارچگی داده، ممیزی‌پذیری و پایداری سرویس در کنار مهلت‌های سازمانی.
  • سامانه روی ecotam.tejaratbank.ir در دسترس است.

فناوری‌ها: Go، NestJS، TypeScript، Vue 3، React، PostgreSQL، Oracle، Redis، Kafka، RabbitMQ، Docker، Kubernetes، Microservices

ایرانسل

توسعه‌دهندهٔ Full-Stack — همکاری پروژه‌ای (شهریور ۱۴۰۴ — مهر ۱۴۰۴)

همکاری پروژه‌ای روی نرم‌افزار SLM ایرانسل، هم‌زمان با نقش تمام‌وقت در تجارت شایان.

  • ورود به کدبیس یک اپراتور مخابراتی و تحویل در بازه‌ای کوتاه، بدون دورهٔ آشناسازی طولانی.

فناوری‌ها: TypeScript، Node.js، Vue، REST API

Hubwork

توسعه‌دهندهٔ Full-Stack (خرداد ۱۴۰۰ — فروردین ۱۴۰۱)

سامانهٔ رزرو فضاهای کاری اشتراکی، به‌علاوهٔ سیستم VoIP روی Asterisk.

  • ساخت سامانهٔ رزرو با NestJS و Vue: در دسترس بودن منابع، تعارض بازه‌های زمانی و چرخهٔ حیات رزرو.
  • یکپارچه‌سازی تلفنی با Asterisk — نخستین سیستم real-time و حالت‌داری که بیرون از دنیای درخواست/پاسخ ساختم.

فناوری‌ها: NestJS، Vue.js، Asterisk، VoIP، Node.js، MySQL

شرکت مهندسین مشاور

مدیر بخش IT و توسعه‌دهنده (شهریور ۱۳۹۰ — اسفند ۱۳۹۹)

نُه سال و نیم مالکیت کامل فناوری یک شرکت: هم ساختِ نرم‌افزار، هم ادارهٔ زیرساخت و تیم.

  • ساخت سامانه‌های داخلی سازمانی با PHP و Laravel — گردش کار اداری و ابزارهای عملیاتی که کارکنان هر روز استفاده می‌کردند.
  • طراحی و تحویل وب‌سایت و پورتال برای مشتریان و کارفرمایان شرکت.
  • مدیریت زیرساخت IT و شبکه: سرور، شبکه، پشتیبان‌گیری، تدارکات و پشتیبانی کاربران.
  • هم‌زمان، پروژه‌های فریلنسی مستقل — تمرین برآورد، مذاکرهٔ دامنه و تحویل بدون سرپرست.
  • در همین دوره Intl-carbon را منتشر کردم؛ افزونهٔ تقویم شمسی برای Carbon در PHP که هنوز روی GitHub ستاره می‌گیرد.

فناوری‌ها: PHP، Laravel، MySQL، JavaScript، CSS3، Linux، Networking

مدیریت و مالکیت محصول

مدیر بخش IT — نُه سال و نیم

مالکیت کامل فناوری یک شرکت مهندسین مشاور: تیم، زیرساخت، تدارکات، و نرم‌افزارهایی که خودم می‌نوشتم. مدیریت برای من چیزی نیست که تازه یاد گرفته باشم؛ نقطهٔ شروع مسیرم بود.

مدیر فنی، تجارت شایان

راهبری تیم فنی روی سامانهٔ مالی وابسته به بانک تجارت: اولویت‌گذاری، استاندارد کد، بازبینی، و ترجمهٔ خواستهٔ ذی‌نفع بانکی به ملاک پذیرش قابل آزمون.

تعریف محصول به‌صورت مکتوب و قابل دفاع

در پروژه‌های شخصی هم اول سند می‌نویسم، بعد کد. «بریف حاکمیتی» Helios تصمیم‌ها را قفل می‌کند، مالکیت پانزده حوزه را بدون هم‌پوشانی تقسیم می‌کند، و صریح می‌گوید در تعارض با اسناد قدیمی‌تر کدام برنده است. این دقیقاً همان کاری است که یک Product Owner باید بلد باشد.

ثبت تصمیم همراه با هزینه‌اش

هر ADR در Social CMS بخشی به نام «آنچه از دست دادیم» دارد. وقتی اصل «توکن هرگز دستگاه را ترک نمی‌کند» را قفل کردم، صریح نوشتم که هزینه‌اش نبودِ تضمین زمان‌بندی روی iOS است — و رابط باید همین را صادقانه اعلام کند. ذی‌نفع به وعده نیاز ندارد؛ به تصویر درست از معامله‌ای که می‌کند نیاز دارد.

دامنه با kill condition

در کار تحقیقاتی، پیش از شروع می‌نویسم که چه نتیجه‌ای پروژه را متوقف می‌کند. سه مطالعهٔ بازار نتایج منفی خودشان را حذف نکردند و همان‌ها ارزشمندترین بخش گزارش شدند. توانایی گفتن «این مسیر بسته است» زودتر از موعد، همان چیزی است که بودجهٔ تیم را نجات می‌دهد.

راهبری چندزبانه و چندفرهنگی

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

پروژه‌ها و نمونه‌کارها

صندوق — سرویس دفترکل کیف پول

دفترکل مرجع واحد است؛ مانده فقط یک projection مشتق‌شده که پیوسته reconcile می‌شود.

در تولید و زیر توسعه و نگهداری فعال. دفترکل مالی دوطرفه و تغییرناپذیر برای ریال. قاعدهٔ طراحی صریح است: درستی مالی بر سادگی توسعه مقدم است. دامنه کاملاً خالص و بدون I/O است، لایهٔ کاربرد موتور ثبت مشترک و idempotency را دارد، و زیرساخت با pgx و SQL پارامتری دست‌نویس کار می‌کند — بدون ORM. سه نقطهٔ ورود جدا: API، worker و reconciler.

  • قاعدهٔ توازن، قرارداد علامت، و اعتبارسنجی شمارهٔ حساب و شبا در دامنهٔ خالص — با پوشش کامل تست واحد.
  • idempotency با UUIDv5 و replay امن: همان درخواست دو بار، همان نتیجه، بدون ثبت دوباره.
  • dispatcher الگوی outbox روی SKIP LOCKED با exponential backoff، jitter و dead-letter queue.
  • reconciler با leader election که integrity invariant و audit chain را پیوسته می‌سنجد و پارتیشن‌ها را نگه می‌دارد.
  • زنجیرهٔ middleware در لایهٔ transport: TLS، IP allowlist، کلید API، rate limiting، request-id و request log — با Prometheus و OpenAPI.
  • داشبورد Vue 3 با TanStack Query/Table/Virtual، ECharts، تقویم شمسی، مرزهای معماری که enforce می‌شوند، تست accessibility و بودجهٔ bundle size.

فناوری‌ها: Go 1.26، PostgreSQL 16، Chi، pgx، Goose، Oracle CDC، Prometheus، Vue 3، TanStack، Tailwind، Playwright، Docker

پلتفرم صورتحساب و زنجیرهٔ تأمین

پانزده سرویس پشت یک gateway با service discovery، با microfrontend هر سرویس داخل یک shell.

اجراشده و در تولید، زیر توسعه و نگهداری فعال. پلتفرم چندسرویسی صورتحساب: یک سامانهٔ مرجع صورتحساب هم‌راستا با BIAN پشت یک API gateway با service discovery خودکار، و رابط Vue هر سرویس به‌صورت microfrontend، که یک shell واحد بر اساس دسترسی کاربر سوارشان می‌کند. لبهٔ سیستم IAM را نگه می‌دارد — کاربر، نقش، مجوز، کلید API و impersonation — و همهٔ ترافیک خروجی از یک گلوگاه با circuit breaker و redaction عبور می‌کند.

  • پانزده سرویس: invoice، payment، payment-order، debtor، eligibility، fraud، signature، file، logs، egress، notifier، OTP، captcha و anytopdf.
  • گردش کار صورتحساب با مالیات بر ارزش افزوده و تسویه، و یکپارچگی با سامانه‌های مالیاتی مؤدیان و افق.
  • index، جست‌وجو و replay لاگ‌های API روی OpenSearch؛ object storage روی MinIO.
  • تصمیم معماری مستند برای کنارگذاشتن APISIX و ساخت gateway اختصاصی — با دلیل مکتوب و ADR.

فناوری‌ها: Go، Vue 3، Microfrontends، API Gateway، OpenSearch، MinIO، PostgreSQL، Docker، BIAN

سامانهٔ رتبه‌بندی اعتباری

هیچ منبع بیرونی اجباری نیست؛ نبودشان امتیاز را متوقف نمی‌کند، فقط اطمینان را پایین می‌آورد.

سرویس مستقل اعتبارسنجی شخص با کد ملی، بر پایهٔ مدل scoring با بودجهٔ ۱۰۰۰ نمره و قاعدهٔ عدم جبران. موتور scoring کاملاً خالص و بدون I/O است و از پنج منبع بیرونی تغذیه می‌شود. طراحی کلیدی: هیچ منبعی اجباری نیست — اگر یکی در دسترس نباشد، امتیاز همچنان صادر می‌شود ولی پاسخ صادقانه اعلام می‌کند کدام منبع کم بوده و اطمینان چقدر افت کرده است.

  • دو سطح دسترسی جدا: API با کلید برای مصرف‌کنندهٔ ماشینی، و BFF با نشست کاربر برای داشبورد اپراتور.
  • ارزیابی خودکار روی durable queue اجرا می‌شود، پس یک منبع کند هیچ درخواستی را قفل نمی‌کند.
  • کیفیت داده بخشی از پاسخ است، نه یک جزئیات پنهان — مصرف‌کننده می‌داند چقدر می‌تواند به عدد اعتماد کند.
  • سند مدل، منابع داده، قواعد سیاست‌گذاری و دسترسی API همه به فارسی نوشته شده تا برای ذی‌نفع بانکی قابل بازبینی باشد.

فناوری‌ها: Go 1.26، PostgreSQL، Vue 3، Durable queues، Scoring engine

https://eco-trust.ir/

سامانهٔ بانکداری متمرکز — پژوهشی

پیاده‌سازی مرجع پژوهشی با هدف ۳۰۰٬۰۰۰ تراکنش در ثانیه، روی سرفصل ۲۸ رقمی واقعی — تکمیل‌شده.

کار پژوهشی که به سرانجام رسید: پیاده‌سازی مرجع یک سامانهٔ بانکداری متمرکز بومی، بر پایهٔ دادهٔ واقعی — سرفصل ۲۸ رقمی و ساختار شعب و سازمان بانک — و استانداردهای جهانی بانکداری. سرویس‌ها با Go و معماری DDD بدون ORM، داشبورد با Vue 3 و ECharts به‌صورت راست‌به‌چپ. بیست‌ونه سند فنی از معماری مرجع تا پایان روز، حسابرسی و بازیابی فاجعه. پژوهش کامل و بسته شد؛ به تولید نرفت و قرار هم نبود برود.

  • اسناد فارسی از خلاصهٔ مدیریتی تا موتور تراکنش، پایان روز، امنیت، حسابرسی و تداوم کسب‌وکار.
  • زیرساخت: PostgreSQL با partitioning، Redis، Kafka و مانیفست‌های Kubernetes.
  • هدف کارایی صریح و load test جدا — عدد ادعا نمی‌شود مگر اندازه‌گیری شود.

فناوری‌ها: Go، sqlc، goose، PostgreSQL، Redis، Kafka، Kubernetes، Vue 3، ECharts

یادستان — پلتفرم خودآموز فارسی

ده دورهٔ خودآموز روی یک پلتفرم: از HTML تا یادگیری عمیق و مهندسی LLM.

محصول کامل خودم، منتشرشده روی yaadestan.com — یک پلتفرم خودآموز فارسی‌زبان، نه یک دوره. ده دوره روی آن نشسته و همه یک استاندارد نگارش، یک زنجیرهٔ پیش‌نیاز و یک زبان بصری مشترک دارند: «تاروپود» (HTML و CSS)، «ریشه» (ریاضیِ لازم برای AI، از صفر)، «سرنخ» (پایتون ← داده ← ML)، «ژرفا» (یادگیری عمیق و مهندسی LLM)، «داربست» (مهندسی کدِ اطراف مدل)، «مرز» (پژوهش: بخوان، بازتولید کن، منتشر کن)، «آوند» (داده: SQL، مدل‌سازی، تحلیل)، «بنیاد» (الگوریتم و پیچیدگی، اندازه‌گیری‌شده)، «هم‌هوش» (سواد AI، بدون کد) و «آیرو» (رباتیک).

  • بیشتر دوره‌ها BOOK-FIRST‌اند — کتاب خودآموز، نه فیلمِ حرف‌زدن. هفت دوره در Google Colab اجرا می‌شوند تا هیچ‌کس پشت نصب محیط گیر نکند.
  • «دفتر مفاهیم» تضمین می‌کند هیچ جلسه‌ای به مفهومی تکیه نکند که هنوز تدریس نشده — یک invariant برنامهٔ درسی، نه یک قصد خوب.
  • آیرو، دورهٔ رباتیک: پنج ترم و حدود ۵۶ جلسه، کامل و پذیرفته‌شده. کدنویسی متنی از جلسهٔ اول روی ESP32 واقعی — برخلاف برنامه‌های مطرح جهانی که یا بلاکی شروع می‌کنند یا سخت‌افزار را به بعد از تسلط بر Python موکول می‌کنند.
  • آزمایشگاه مرورگری با MicroPython روی WebAssembly و شبیه‌ساز قطعات Wokwi — نوجوان بدون داشتن برد هم می‌تواند شروع کند.
  • استاندارد نگارش مشترک برای همهٔ دوره‌ها: قالب فصل، راهنمای سبک راست‌به‌چپ فارسی با کد چپ‌به‌راست، و «بستهٔ نویسنده» — تا افزودن دورهٔ یازدهم کیفیت را رقیق نکند.
  • طراحی مبتنی بر بررسی برنامه‌های برتر جهان، متاآنالیزهای اثربخشی و ادبیات سوءبرداشت‌های نوجوانان در برنامه‌نویسی.
  • سایت با Nuxt، آزمایشگاه با Vue، بک‌اند و ربات با Go — یک محصول واقعی با کاربر واقعی، نه یک نمونهٔ کار.

فناوری‌ها: Nuxt، Vue 3، Go 1.26، MicroPython، WebAssembly، Wokwi، ESP32، Google Colab، Motion graphics

https://yaadestan.com

Arena — پلتفرم بازی چندنفره

یازده میکروسرویس Go با دفترکل دوطرفه که تا صفر تراز می‌شود.

یک پلتفرم بازی رویدادمحور و آمادهٔ تولید: میکروسرویس‌های Go با SQL خام (بدون ORM)، PostgreSQL، Redis، NATS، WebSocket gateway real-time و کلاینت Flutter. هر سرویس ساختار hexagonal/DDD دارد و وابستگی‌ها فقط به سمت درون اشاره می‌کنند. مسیر مالی سرتاسری روی ماشین تأیید شده است: ثبت‌نام ← واریز ← replay idempotent بدون اعتبار دوباره ← کسر ورودی مسابقه بین سرویسی ← تراز دفترکل روی صفر ← رویداد real-time روی WebSocket.

  • دفترکل دوطرفهٔ فقط‌افزودنی با constraint trigger پایگاه داده که هر ثبت نامتوازن را در لحظهٔ commit رد می‌کند.
  • کلیدهای idempotency در سطح SQL enforce می‌شوند، نه در سطح اپلیکیشن — replay درخواست هرگز دو بار اعتبار نمی‌دهد.
  • row locking به‌علاوهٔ CHECK پایگاه داده روی موجودی: برداشت بیش از موجودی از نظر ساختاری غیرممکن است.
  • WebSocket gateway هیچ منطق کسب‌وکاری ندارد — سرویس‌ها روی NATS منتشر می‌کنند، gateway ترتیب می‌دهد و در اتصال مجدد رویدادهای ازدست‌رفته را replay می‌کند.
  • پنل مدیریت با React و TanStack Query/Table؛ کلاینت بازیکن با Flutter.

فناوری‌ها: Go، PostgreSQL، pgx، Redis، NATS، WebSocket، Flutter، React، Docker Compose

Helios — اکوسیستم چندبازی

معماری پلتفرمی برای ۵۰+ بازی هم‌زمان، با مالکیت بدون overlap بین ۱۵ حوزه.

به‌جای یک بازی، یک اکوسیستم: بازی‌های نامحدود، راه‌اندازی پویا، و استقرار/ارتقا/بازگشت هر بازی به‌صورت مستقل و بدون قطعی پلتفرم — از یک کدبیس واحد برای موبایل و دسکتاپ. سند «بریف حاکمیتی» تصمیم‌ها را قفل می‌کند و مالکیت هر حوزه را چنان تفکیک می‌کند که هیچ دو تیمی مالک یک چیز نباشند. این پروژه بیش از آنکه تمرین کدنویسی باشد، تمرین مالکیت محصول است.

  • اهداف مقیاس صریح و قابل راستی‌آزمایی: ۱۰ میلیون کاربر، ۱ میلیون MAU، ۱۰۰ هزار کاربر هم‌زمان، چندمنطقه‌ای.
  • ماتریس مالکیت ۱۵ حوزه با قاعدهٔ «هیچ مالکیت هم‌پوشان» — سند حاکمیتی مرجع واحد است و اسناد قدیمی‌تر بازنویسی می‌شوند.
  • plugin runtime روی WASM با wazero؛ ارکستراسیون بازی با Agones و Open Match.
  • قوانین قفل‌شدهٔ پایین‌سطح: PostgreSQL با pgx/sqlc/goose، Redis Cluster، NATS JetStream، UUIDv7، ledger مبتنی بر عدد صحیح، outbox تراکنشی، RPO ≤ 30s و RTO ≤ 60s.

فناوری‌ها: Go، PostgreSQL، Redis Cluster، NATS JetStream، WASM / wazero، Agones، Open Match، Flutter، OpenTelemetry

telegram-control — پلتفرم افزونه‌ای

هستهٔ کوچکی که تنها جای اعمال مجوز است، و هر قابلیت دیگری کد untrusted.

پلتفرم ربات تلگرام خودمیزبان که قابلیت‌هایش افزونه‌اند، به‌علاوهٔ بازارچه‌ای برای همان افزونه‌ها. دو محصول عمداً جدا: «Control» چیزی است که مشتری اجرا می‌کند — ربات، دیتابیس و کلیدهای خودش؛ «Market» یک استقرار واحد است که به همهٔ نصب‌ها خدمت می‌دهد. Control وقتی Market در دسترس نیست هم کار می‌کند؛ این یک محدودیت طراحی است، نه یک لطف.

  • افزونه‌های سندباکس‌شده در فرایندی با `network: none` اجرا می‌شوند و supervisor خودش هیچ کد افزونه‌ای اجرا نمی‌کند.
  • ارتقا به ردهٔ مورد اعتماد به سه چیز مستقل نیاز دارد: امضای ناشر، ورودی در فهرست امضاشدهٔ Market برای همان tree hash، و نام‌بردن صریح توسط اپراتور. نبود هرکدام یعنی سندباکس.
  • راه‌اندازی اولیه با توکن یک‌بارمصرف که پس از وجود اولین مدیر برای همیشه بسته می‌شود — یک bootstrap، نه یک درِ دوم.
  • هستهٔ Go، میزبان افزونه با Node، پنل مدیریت با Vue، پرداخت با Telegram Stars.

فناوری‌ها: Go، Node.js، TypeScript، Vue 3، Docker، Ed25519 signing، Telegram Bot API

Viral Radar — رادار محتوای وایرال

یک پرسش، بدون ورودی: همین حالا چه چیزی روی اینترنت منفجر شده است؟

برنامه‌ای محلی که بدون آنکه موضوعی تایپ کنی، به یک پرسش پاسخ می‌دهد: همین حالا چه چیزی در حال انفجار است و امروز چه باید ساخت؟ سیگنال را از چند منبع جمع می‌کند، رشد را می‌سنجد و پیشنهاد می‌دهد. صفر runtime dependency و کاملاً محلی.

  • صفر runtime dependency — کل pipeline جمع‌آوری و تحلیل روی کتابخانهٔ استاندارد Node ۲۴ اجرا می‌شود.
  • رابط وب با Vue 3، Vuetify و vue-i18n؛ مستندات و رابط دوزبانه.
  • CI روی GitHub Actions، مجوز MIT، بسته‌بندی به باینری اجرایی.

فناوری‌ها: TypeScript، Node.js 24، Vue 3، Vuetify، vue-i18n، esbuild، GitHub Actions

https://github.com/TheServat/ViralRadar

روایت — ایده تا سریال انیمیشنی

هزینه به تعداد asset یکتا وابسته است، نه به تعداد فریم یا قسمت.

خط تولیدی که از یک ایدهٔ متنی شروع می‌کند و به سریال انیمیشنی چندقسمتی می‌رسد. سه تصمیم کل معماری را می‌سازد: نخست سبک قفل می‌شود (یک StyleBible با checksum که جزئی از کلید هر asset است، پس تغییر سبک به‌جای ناهماهنگی خاموش، کتابخانه را fork می‌کند)؛ انیمیشن به‌جای فریم‌به‌فریم روی rig محاسبه می‌شود؛ و خروجی از یک composition واحد برای YouTube، Shorts، Reels و TikTok رندر می‌گیرد.

  • مونوریپوی ۱۲ بسته با pnpm و turbo؛ مرزهای معماری با dependency-cruiser enforce می‌شود، نه با توافق شفاهی.
  • بررسی determinism بخشی از خط CI است: خروجی باید بازتولیدپذیر باشد.
  • وضعیت صادقانه در README خودِ پروژه اعلام شده: «موتورها کامل‌اند، استودیو نیمه‌کاره است.»

فناوری‌ها: TypeScript، pnpm، Turborepo، Vue 3، Pinia، Vitest، Playwright، Zod

https://github.com/TheServat/Rivayat

Atlas — CLI کدنویسی سه‌فازی

فاز طراحی حق نوشتن کد ندارد. این تنها قاعده‌ای است که کل ابزار را می‌سازد.

CLI کدنویسی با AI، در سه فاز جدا: فاز طراحی پروژه را تحلیل می‌کند و برنامهٔ کار اتمی و اولویت‌دار می‌سازد اما هرگز کد نمی‌نویسد؛ فاز کد هر وظیفه را با تست و verification gate پیاده می‌کند؛ فاز polish بدون هیچ فراخوانی API یک درخواست بازبینی دقیق تولید می‌کند. جداکردن این سه، همان چیزی است که جلوی «کدِ باورپذیر ولی غلط» را می‌گیرد.

  • indexing با go/ast: نمادها، dependency graph و call graph در SQLite، با جست‌وجوی lexical با FTS5 و جست‌وجوی semantic، و hybrid retriever.
  • بدون CGO — SQLite خالص Go و پارسر کتابخانهٔ استاندارد، پس ساخت روی هر پلتفرمی کار می‌کند و انتشار cross-compile می‌شود.
  • هر وظیفه: checkpoint ← کد ← اعمال ← verify (gofmt، build، test) ← reviewer gate ← commit، وگرنه بازگشت و تلاش دوباره با بازخورد.
  • indexing افزایشی بر اساس hash محتوا، و افت خودکار به حالت lexical وقتی embedding در دسترس نیست.

فناوری‌ها: Go 1.25، SQLite (modernc)، sqlc، goose، Ollama، Bubble Tea TUI، go/ast

Social CMS — انتشار چندپلتفرمی

توکن‌های پلتفرم هرگز دستگاه کاربر را ترک نمی‌کنند.

سامانهٔ نصب‌شدنی برای مدیریت محتوای شبکه‌های اجتماعی: تولید محتوا، انتشار خودکار چندپلتفرمی و چندزبانه، تحلیل ترند و تگ‌گذاری. دو اصل کل معماری را می‌سازد: توکن‌های پلتفرم در Keychain دستگاه می‌مانند و سرور فقط می‌داند چه چیزی کِی باید منتشر شود؛ و افزونه‌های کلاینت داده‌اند، نه کد.

  • هزینهٔ آن اصل صریحاً اعلام شده: زمان‌بندی روی iOS تضمین‌شدنی نیست، و درجهٔ اطمینان صادقانه در رابط نمایش داده می‌شود.
  • PostgreSQL بدون ORM — postgres.js با SQL خام و RLS در سطح پایگاه داده.
  • هر تصمیم معماری به‌همراه «آنچه از دست دادیم» در ADR ثبت شده است.
  • ۲۲ تست امنیتی روی مرزهای مجوز و توکن.

فناوری‌ها: TypeScript، Fastify، PostgreSQL، postgres.js، Redis، Flutter، pnpm workspaces

شبکهٔ عصبی عملیات‌ترکیبی

حدود ۱۵ برابر بهتر از int8 در انرژی و ۵ برابر در حافظه، با دقت برابر یا بهتر.

یک ایدهٔ مقاله‌ای که به معماری کارآمد و اعتبارسنجی‌شده روی چند مجموعه‌داده رسید. طرح اولیه سه نمایش عددی ناسازگار را داخل یک node جمع می‌کرد — که از نظر ریاضی ناسازگار بود. اصلاح: واحدهای همگن با انتخاب یادگیرندهٔ هر کانال میان ternary و power-of-two (APoT) در یک فضای عددی مشترک، به‌علاوهٔ مرزهای صریح requantize؛ و جداکردن مسیر منطقی به یک شاخهٔ تک‌بیتی.

  • روش کار: نقد ایده ← رفع نقص کشنده ← پیاده‌سازی ← اعتبارسنجی ← بهینه‌سازی ← اندازه‌گیری روی kernel واقعی. هر مرحله kill condition داشت.
  • همهٔ اعداد اندازه‌گیری‌شده‌اند یا از شمارش عملیات اندازه‌گیری‌شده برآورد شده‌اند، multi-seed هرجا که اهمیت داشته.
  • گزارش صادقانه است: برتری دقت به وظیفه بستگی دارد و قابل تنظیم است — نه ادعای پیروزی مطلق.

فناوری‌ها: Python، PyTorch، Quantisation، Custom kernels

PARV-1 — گفتار احساسی فارسی روی لبه

گفتار فارسی احساسی، real-time، فقط روی CPU و زیر دو گیگابایت حافظه.

تلاش پژوهشی و مهندسی برای ساخت TTS فارسیِ احساسی با قابلیت voice cloning که روی رزبری‌پای و سخت‌افزار ARM، فقط با CPU و زیر ۱ تا ۲ گیگابایت حافظه، real-time اجرا شود — بر پایهٔ اصول BitNet و نمایش ternary. معماری پیشنهادی گزارش پژوهش: یک مدل زبانی ternary recurrent codec-LM.

  • ترتیب کار از روی بازگشت سرمایه انتخاب شد: front-end فارسی نخست ساخته شد چون منبع غالب خطای تلفظ است و تقریباً هیچ محاسبه‌ای نمی‌خواهد.
  • front-end کاملاً پایتون خالص و بدون وابستگی است تا روی کوچک‌ترین دستگاه هدف هم اجرا شود.
  • pipeline کامل متن به واج: نرمال‌سازی یونیکد و نیم‌فاصله، برچسب احساس درون‌خطی، گسترش عدد و تاریخ و ارز، و G2P سه‌لایه با درجهٔ اطمینان.
  • خروجی شامل مکث prosodic و control token است، نه فقط رشتهٔ واج — یعنی احساس بخشی از نمایش است.

فناوری‌ها: Python، BitNet / ternary، G2P، Signal processing، ARM / edge

سه مطالعهٔ ریزساختار بازار

نتیجه‌ای که کسی دوست ندارد بشنود: جهت در هیچ افق قابل‌معامله‌ای پیش‌بینی‌پذیر نیست.

سه مطالعهٔ مستقل — آیا زبانی برای بازار وجود دارد؟ آیا لبهٔ قابل‌معامله در سهام هست؟ و همان پرسش روی دادهٔ تمیز کریپتو. هر عدد در برابر نتایج ذخیره‌شده با اسکریپت verify هر پروژه بررسی شده است (۳۵/۳۵، ۲۹/۲۹، ۵۱/۵۱). یافتهٔ محوری: نوسان تنها شیء پیش‌بینی‌پذیر است و مسیرش بیش از سطحش اطلاعات دارد — ساختاری که هیچ خانوادهٔ GARCH آن را بازتولید نمی‌کند.

  • مطالعه با kill condition طراحی شد و نتیجهٔ منفی را حذف نکرد — «یک پیش‌بینی بهتر نوسان برای معامله‌گر بی‌ارزش است» چهار بار مستقل تأیید شد.
  • تنها «سیگنال» در سهام روزانه، دادهٔ FX خراب از آب درآمد (AUC جعلی ۰٫۸۰) — یعنی pipeline خودش دام‌ها را پیدا می‌کند.
  • یافتهٔ واقعی و کوچک: بازگشت در مقیاس ۵ دقیقه‌ای، خارج از نمونه با z ≈ ۶–۹.

فناوری‌ها: Python، Statistics، GARCH family، Information theory، Reproducible research

Ecotam — headless CMS و AI-Native

معماری منجمد است؛ تغییرش RFC می‌خواهد با دلیل، تحلیل اثر، مسیر مهاجرت و ارزیابی سازگاری.

پلتفرم headless CMS، multi-tenant و AI-Native در سطح سازمانی — ساخته‌شده تا هم به‌عنوان SaaS تجاری اداره شود و هم از یک باینری واحد خودمیزبان شود. فاز صفر کامل شد و معماری به‌عنوان BASELINE-1.0 تثبیت و منجمد شد: هیچ کد تولیدی نوشته نشد، عمداً. این پروژه نمونهٔ کامل کاری است که یک Product Owner فنی باید انجام دهد — قفل‌کردن تصمیم پیش از هزینه‌کردن.

  • کنترل تغییر رسمی: اسناد پیاده‌سازی حق بازطراحی معماری را ندارند، و هر انحراف باید از مسیر RFC عبور کند.
  • بیش از سی ADR، هرکدام با دامنه، دلیل و پیامد صریح.
  • نام محصول هم خودش یک تصمیم ثبت‌شده است — چون نام‌گذاری و دامنهٔ محصول جزو کار مالک محصول است، نه یک جزئیات بعدی.

فناوری‌ها: Go، PostgreSQL، sqlc، Multi-tenant، ADR / RFC process

Voice Changer — کارگاه صدای شخصیت‌ها

پنجاه دیالوگ از ۵۷ دقیقه به ۸ دقیقه رسید، فقط با نگه‌داشتن مدل در یک worker ماندگار.

تبدیل دیالوگ فارسیِ ضبط‌شده به صدای شخصیت‌های داستان — تبدیل صدا به صدا، نه متن به گفتار. تو بازی می‌کنی، فقط جنس صدا عوض می‌شود و لحن، ریتم، مکث و احساست می‌ماند. خروجی خام موتورها «تلفنی» است؛ سه لایهٔ بازسازی و مسترینگ پهنای باند را از ۱۰٫۸ به ۱۸٫۵ کیلوهرتز برمی‌گرداند.

  • دو موتور سنجیده شد و انتخاب مستند شد: Seed-VC تلفظ فارسی را دو برابر بهتر از Chatterbox ادا می‌کند.
  • زنجیرهٔ quality اندازه‌گیری‌شده در هر مرحله، با خروجی نهایی ۴۴٫۱ کیلوهرتز و ۱۶٫۰− LUFS.
  • کاملاً محلی روی یک Quadro RTX 3000 با ۶ گیگابایت — یعنی طراحی زیر محدودیت سخت‌افزاری واقعی.

فناوری‌ها: Python، FastAPI، Seed-VC، CUDA، Audio DSP

دیتاست گفتار احساسی فارسی

صد درصد محلی — هیچ API ابری یا LLM هرگز صدا زده نمی‌شود.

ساخت دیتاست‌های بزرگ و برچسب‌خوردهٔ گفتار فارسی برای TTS، voice cloning و مدل‌های درک گفتار — کاملاً روی ماشین خودت. دو pipeline مستقل: متن (crawl متن فارسی ← جملات گفتاری با برچسب احساس و prosody) و صوت (گفتار واقعی انسانی، جمله‌بندی‌شده، با transcript و برچسب‌های مشتق از خود صوت).

  • crawl، separation، transcription و labeling همه محلی روی CPU یا GPU اجرا می‌شوند.
  • قابلیت resume، dedup و run lock از ابتدا طراحی شده‌اند — یعنی برای اجرای چندروزه ساخته شده است.
  • مستندات کامل فارسی راست‌به‌چپ در کنار مستندات انگلیسی.

فناوری‌ها: Python، Whisper، Audio separation، Web crawling

حکم — بازی چندنفرهٔ real-time

یک بازی، سه مسیر شبکه: اینترنت، شبکهٔ محلی و بلوتوث.

بازی ورق حکم به‌صورت real-time و چندنفره، با منطق بازی server-authoritative. کلاینت Flutter، بک‌اند Go، دادهٔ PostgreSQL و Redis. علاوه بر بازی آنلاین، بازی روی شبکهٔ محلی با mDNS و TCP و بازی بلوتوثی هم پشتیبانی می‌شود — به‌علاوهٔ حریف AI در سه سطح، حالت spectator و سیستم reconnect.

  • منطق بازی server-authoritative است: کلاینت هرگز مرجع state نیست.
  • مشخصات فنی کامل با تفکیک زیرسیستم‌ها، test plan و سند معماری پیش از کد نوشته شد.
  • هدف مقیاس: ۱ میلیون کاربر هم‌زمان و ۱۰ هزار اتاق فعال.

فناوری‌ها: Go، Flutter، PostgreSQL، Redis، WebSocket، mDNS، Bluetooth

Intl-carbon — تقویم شمسی برای PHP

منتشرشده در ۱۳۹۴، هنوز روی GitHub ستاره می‌گیرد.

افزونهٔ Carbon در PHP با پشتیبانی IntlCalendar — تاریخ شمسی را به همان روانیِ تاریخ میلادی در Carbon در دسترس می‌گذارد. قدیمی‌ترین کد عمومی من که هنوز کار می‌کند و هنوز کاربر دارد؛ که خودش یک آزمون است: کدی که ده سال بعد هم قابل استفاده باشد.

  • کهنه‌ترین کد عمومی من، ۱۳۹۴ — و شواهد اینکه پیش از دورهٔ ابزارهای AI هم کد منتشر می‌کردم.
  • مسئلهٔ واقعی توسعه‌دهندهٔ ایرانی: تاریخ شمسی در یک اکوسیستم میلادی.

فناوری‌ها: PHP، Carbon، IntlCalendar

https://github.com/TheServat/Intl-carbon

مهارت‌های فنی

بک‌اند و سرویس‌ها

NestJS، Node.js، TypeScript، Go، PHP / Laravel، Express.js، Fastify، Koa.js

معماری و یکپارچه‌سازی

Microservices، REST API، GraphQL، gRPC، RabbitMQ، Kafka، NATS JetStream، Swagger / OpenAPI، WebSocket، Event-driven design، DDD / Hexagonal

داده و ذخیره‌سازی

PostgreSQL، MySQL، MongoDB، Redis، Double-entry ledgers

فرانت‌اند و کلاینت

Vue 3، JavaScript ES6+، CSS3، Vite، React، Flutter

پلتفرم و عملیات

Docker / Compose، Linux، Crawlers & scraping، CI (GitHub Actions)، Observability (OTel)، Networking & infra

تحصیلات

  • کاردانی نرم‌افزار — دانشگاه سما، ۱۳۸۵ — ۱۳۸۸
  • دیپلم گرافیک — هنرستان هشترودی، ۱۳۸۱ — ۱۳۸۲

زبان‌ها

  • آذری — زبان مادری
  • فارسی — حرفه‌ای
  • ترکی استانبولی — متوسط
  • انگلیسی — متوسط — فنی روان

تماس

رزومهٔ کامل