مهندسی نرم‌افزار · پژوهش تانسور

من مهدی مولوی هستم

بک‌اندهای سریع و قابل‌اتکا را با C#، ASP.NET Core، SQL Server و Redis می‌سازم و روی روش‌های تجزیهٔ تانسوری برای یادگیری از کلان‌داده پژوهش می‌کنم. بیش از ده سال مهندسی در محیط عملیاتی پژوهشم را کاربردی نگه می‌دارد و ریاضیات، مهندسی‌ام را دقیق.

مهدی مولوی

تجزیهٔ CP: جمع جمله‌های رتبه‌یک؛ این‌جا فقط یک جمله، T ≈ a ∘ b ∘ c.

مهندسی
10+

سال تجربهٔ ساخت سیستم‌های بک‌اند پرترافیک

مهندسی
89 هزار

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

مهندسی
70 هزار

کاربر هم‌زمان در اوج آزمون، روی معماری Redis HA که طراحی کردم

آکادمیک
18.8/20

معدل کارشناسی ارشد علوم کامپیوتر (حدود ۵٪ برتر)

مهدی مولوی

مهدی مولوی

مهندس ارشد بک‌اند و پژوهشگر تانسور

مهندس ارشد بک‌اند دات‌نت هستم و بیش از ده سال تجربه در ساخت سیستم‌های پرترافیک با C#، ASP.NET Core، SQL Server، Redis و Docker دارم. میکروسرویس‌های ‎.NET 6/8، بهینه‌سازی SQL Server و یک معماری Redis با دسترس‌پذیری بالا را برای پلتفرم‌های آزمون آنلاینی تحویل داده‌ام که به حدود ۸۹ هزار دانش‌آموز خدمت می‌دهند و در اوج آزمون‌ها ۴۵ تا ۷۰ هزار کاربر هم‌زمان دارند؛ پیش از آن هم روی سیستم‌های بانکی و مالی کار می‌کردم. در نقش رهبر فنی، خودم مستقیم درگیر کارم: بهینه‌سازی کارایی، کش توزیع‌شده، عیب‌یابی در محیط عملیاتی و منتورینگ تیم‌های بک‌اند.

سمت آکادمیک کارم هم به همان اندازه عمیق است. پس از کارشناسی ریاضی کاربردی، کارشناسی ارشد علوم کامپیوتر را در دانشگاه تربیت مدرس گرفتم و در پایان‌نامه‌ام با عنوان «یادگیری کلان‌داده با نمایش تانسوری»، tc-SVD، تجزیه‌ای تانسوری بر پایهٔ ضربی مبتنی بر تبدیل کسینوسی، و روش‌های یادگیری مبتنی بر آن را توسعه دادم. دستیار آموزشی دروس یادگیری ماشین پیشرفته و داده‌کاوی هم بوده‌ام. این دو دنیا همدیگر را تقویت می‌کنند: پژوهش مهندسی‌ام را دقیق‌تر می‌کند و محیط عملیاتی پژوهشم را واقع‌بین نگه می‌دارد.

  • ازمیر، ترکیه
  • ترکی آذربایجانی و فارسی (زبان مادری)، ترکی استانبولی و انگلیسی (در سطح حرفه‌ای)
  • mhdmlv93@gmail.com
امضا معرفی کامل، سوابق و اطلاعات کلیدی

دو مسیر، یک نگاه

هم در صنعت کار می‌کنم و هم در دانشگاه: سیستم‌های عملیاتی‌ای می‌سازم که زیر فشار سریع می‌مانند و روی ریاضیات داده‌های بزرگ‌مقیاس پژوهش می‌کنم.

صنعت

مهندسی نرم‌افزار

مهندس ارشد بک‌اند · بیش از ۱۰ سال

  • معماری یک پلتفرم آزمون تطبیقی مبتنی بر IRT را برای حدود ۸۹ هزار دانش‌آموز طراحی کردم
  • یک معماری Redis Sentinel با دسترس‌پذیری بالا طراحی کردم که ۴۵ تا ۷۰ هزار کاربر هم‌زمان را در آزمون‌ها تحمل می‌کرد
  • توسعهٔ میکروسرویس‌های ‎.NET 6/8 را رهبری می‌کنم و منتور بیش از ۵ توسعه‌دهنده هستم
  • ورود سؤال‌ها از PDF به LaTeX را همراه با برچسب‌گذاری با LLM برای بیش از ۵٬۰۰۰ سؤال خودکار کردم
  • C#
  • ASP.NET Core
  • SQL Server
  • Redis
  • RabbitMQ
  • Docker
نمونه‌کارها را ببینید راهنماهای بک‌اند: SQL Server، تست بار، کش
آکادمیک

پژوهش تانسور

کارشناسی ارشد علوم کامپیوتر · دانشگاه تربیت مدرس

X=Uk∗S∗VTkt-SVD · بخش‌های رنگی همان چیزی است که برش با رتبهٔ k نگه می‌دارد · راهنمای خواندن شکل
  • پایان‌نامه: یادگیری کلان‌داده با نمایش تانسوری، به راهنمایی دکتر منصور رزقی
  • tc-SVD، یک SVD تانسوری بر پایهٔ ضربی مبتنی بر تبدیل کسینوسی، که داده را به فضای ویژگی فشرده‌ای می‌برد
  • روش‌های طبقه‌بندی و خوشه‌بندی بر پایهٔ همین نمایش
  • دستیار آموزشی دروس یادگیری ماشین پیشرفته و داده‌کاوی (۲۰۱۸ و ۲۰۲۰ تا ۲۰۲۱)
  • تجزیهٔ تانسوری
  • t-SVD
  • ضرب تانسوری
  • ماتریسی‌سازی
  • داده‌های جریانی
خلاصهٔ پایان‌نامه را بخوانید راهنمای کوتاه t-SVD و tc-SVD

سوابق و تحصیلات

بیش از یک دهه مهندسی در محیط عملیاتی، بر پایهٔ ریاضیات و پژوهش.

صنعت ۲۰۱۶ تاکنون

  1. مهندس ارشد بک‌اند

    NovaTech · تهران (دورکاری)فعلی

    پلتفرم آزمون تطبیقی مبتنی بر IRT برای حدود ۸۹ هزار دانش‌آموز؛ رهبری تیم میکروسرویس‌های دات‌نت.

    • معماری یک پلتفرم آزمون تطبیقی را طراحی کردم که بر مدل‌های نظریهٔ سؤال–پاسخ (IRT) برای سنجش شخصی‌سازی‌شده و تحلیل نتایج بنا شده و به حدود ۸۹ هزار دانش‌آموز خدمت می‌دهد.
    • فرایندهای طراحی آزمون، نمره‌دهی، گزارش‌گیری و انتخاب سؤال را طوری ساختم که در دوره‌های اوج آزمون پایدار بمانند.
    • توسعهٔ میکروسرویس‌های ‎.NET 6/8 را رهبری می‌کنم، منتور بیش از ۵ توسعه‌دهنده هستم و استانداردهای بازبینی کد را برای قابلیت‌های پرترافیک تعیین می‌کنم.

    .NET 6/8 · EF Core · SQL Server · Redis · Docker · Python

  2. پروژه‌های فریلنس و شخصی

    مستقل

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

    • ۲۰۱۸ تا ۲۰۲۰: Marketo، فروشگاه آنلاین چندفروشگاهی با پنل‌های مدیریت، فروشگاه و انبار، اپ‌های React Native برای مشتریان و فروشگاه‌ها و درگاه پرداخت آنلاین.
    • ۲۰۱۹ تا ۲۰۲۰: نقشهٔ موضوعی و ویکی برای دانشنامهٔ یک پژوهشکدهٔ بانکی، و یک سامانهٔ تحت وب مدیریت فرایندهای کسب‌وکار (BPMS).
    • ۲۰۲۴: پایپ‌لاین دادهٔ بازار (پروژهٔ تیمی) که جریان داده‌های کریپتو و فارکس را از طریق WebSocket دریافت می‌کند و در TimescaleDB می‌ریزد، با زمان‌بندی Hangfire و پایش با SignalR.
    • ۲۰۲۵ تا ۲۰۲۶: پلتفرم تحویل و خدمات میدانی: توزیع کار، تخصیص خودکار تکنسین، انبار، تسویه‌حساب، و یکپارچه‌سازی درگاه پرداخت و نقشه.
    • ۲۰۲۶: «همسایه»، سامانهٔ SaaS مدیریت ساختمان، و یک پلتفرم میکروسرویس چندمستأجره در حال توسعه، با موتور گردش‌کار، الگوی transactional outbox روی RabbitMQ و امنیت سطح سطر (row-level security) در PostgreSQL.

    .NET · ASP.NET Core · EF Core · SQL Server · PostgreSQL · Redis · RabbitMQ · React · React Native

  3. مهندس بک‌اند، هوش مصنوعی و خودکارسازی آزمون

    Noraco · استرالیا (قرارداد دورکاری)

    خط پردازش تبدیل PDF به LaTeX و برچسب‌گذاری با LLM برای بانکی با بیش از ۵٬۰۰۰ سؤال آزمون.

    • یک خط پردازش خودکار PDF به LaTeX ساختم که آزمون‌های مکتوب را به سؤال‌های ساخت‌یافته و آمادهٔ پایگاه‌داده تبدیل می‌کند (بیش از ۵٬۰۰۰ سؤال).
    • APIهای LLM (OpenRouter) را یکپارچه کردم تا برای بانک سؤال فرادادهٔ موضوع، مهارت و سختی تولید شود.
    • سرویس‌های FastAPI و یک کنسول بازبینی React را برای اعتبارسنجی LaTeX، کنترل کیفیت و انتشار تحویل دادم.

    FastAPI · React · LaTeX · APIهای LLM

  4. مهندس ارشد بک‌اند

    گزینه دو · تهران

    دسترس‌پذیری بالا با Redis Sentinel برای ۴۵ تا ۷۰ هزار کاربر هم‌زمان؛ تأسیس یک تیم علم داده.

    • یک معماری Redis Sentinel با دسترس‌پذیری بالا طراحی و راه‌اندازی کردم که در اوج آزمون‌ها ۴۵ تا ۷۰ هزار کاربر هم‌زمان را تحمل می‌کرد.
    • کوئری‌های SQL Server، مسیرهای کش و APIهای پرتکرار را بهینه کردم و با تست بار Locust گلوگاه‌ها را پیش از رسیدن اوج پیدا می‌کردم.
    • یک تیم چهارنفرهٔ علم داده تشکیل دادم و رهبری کردم که الگوریتم‌های رتبه‌بندی، امتیازدهی و پیشنهاددهی می‌ساخت.
    • با کانتینری کردن سرویس‌ها با Docker، لاگ ساخت‌یافته و CI/CD، انتشار نسخه‌ها را قابل‌اعتمادتر کردم.

    .NET 6 · SQL Server · Redis · RabbitMQ · Docker · Serilog

  5. توسعه‌دهندهٔ فول‌استک

    گزینه دو · تهران

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

    • سیستم گزارش‌گیری را از نو طراحی کردم؛ بار پایگاه‌داده کم شد و گزارش‌های پرکاربرد سریع‌تر شدند.
    • لاگ ساخت‌یافته را با Serilog راه انداختم تا بررسی مشکلات در محیط عملیاتی کوتاه‌تر شود.

    ASP.NET Core · SQL Server · Redis · Serilog

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

    صرافی بانک رفاه

    سامانهٔ بک‌آفیس حواله‌های ارزی که جای حسابداری با صفحه‌گسترده را گرفت.

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

    ASP.NET Core · EF Core · SQL Server · Serilog

  7. توسعه‌دهندهٔ فول‌استک

    امیدان حضور · تهران

    پایدارسازی اپلیکیشن‌های React و React Native؛ APIهای REST نسخه‌دار و مستند.

    • اپلیکیشن‌های React و React Native را بازسازی کردم؛ پایداری بیشتر شد و کرش‌ها در محیط عملیاتی کم شدند.
    • APIهای REST نسخه‌دار با مستندات Swagger برای کلاینت‌های وب و موبایل توسعه دادم.

    React · React Native · .NET Core · Swagger

  8. توسعه‌دهندهٔ دات‌نت

    Withem

    یک شبکهٔ اجتماعی خصوصی برای بازیگران، ساخته‌شده روی استک دات‌نت.

آکادمیک ۲۰۱۱ تا ۲۰۲۱

  1. دستیار آموزشی

    دروس یادگیری ماشین پیشرفته و داده‌کاوی

    دروس یادگیری ماشین و داده‌کاوی، در سال ۲۰۱۸ و دوباره در ۲۰۲۰ تا ۲۰۲۱.

  2. کارشناسی ارشد علوم کامپیوتر

    دانشگاه تربیت مدرس · تهران

    معدل ۱۸٫۸ از ۲۰ (حدود ۵٪ برتر). پایان‌نامه دربارهٔ نمایش تانسوری برای یادگیری کلان‌داده.

    • معدل ۱۸٫۸ از ۲۰ (حدود ۵٪ برتر).
    • پایان‌نامه: یادگیری کلان‌داده با نمایش تانسوری، به راهنمایی دکتر منصور رزقی.

    تجزیهٔ تانسوری · یادگیری ماشین · کلان‌داده

  3. کارشناسی ریاضی کاربردی

    دانشگاه ارومیه · ارومیه

    پایهٔ ریاضی‌ای که هر دو مسیر بر آن بنا شده‌اند.

تمرکز پژوهشی

تجزیهٔ تانسوری، t-SVD، ضرب‌های تانسوری و ماتریسی‌سازی، در کاربرد برای طبقه‌بندی و خوشه‌بندی کلان‌داده.

خلاصهٔ پایان‌نامه را بخوانید

مهارت‌ها و ابزارها

آنچه با آن می‌سازم و آنچه با آن پژوهش می‌کنم.

۸ مهارت

سرویس‌هایی که هر روز می‌سازم

APIهای C#‎ و ASP.NET Core، سرویس‌های پس‌زمینه و دسترسی به داده، تنظیم‌شده برای ترافیک بالا.

  • C#
  • .NET 10
  • ASP.NET Core
  • Web API
  • EF Core
  • Dapper
  • LINQ
  • سرویس‌های پس‌زمینه
۷ مهارت

چطور سیستم‌ها را ساختار می‌دهم

مرزهای روشن و طراحی‌های تاب‌آوری که در اوج روزهای آزمون سرپا می‌مانند.

  • میکروسرویس‌ها
  • Clean Architecture
  • CQRS
  • APIهای REST
  • SOLID
  • تاب‌آوری
  • طراحی با دسترس‌پذیری بالا
۱۱ مهارت

جایی که کارایی به دست می‌آید

بهینه‌سازی SQL Server، کش توزیع‌شده و پیام‌رسانی، پشت ۴۵ تا ۷۰ هزار کاربر هم‌زمان.

  • SQL Server
  • T-SQL
  • ایندکس‌گذاری
  • پلن‌های اجرایی
  • بهینه‌سازی کوئری
  • بهینه‌سازی کارایی
  • Redis
  • Redis Sentinel
  • Redis Cluster
  • RabbitMQ
  • کش توزیع‌شده
۱۲ مهارت

انتشار با اطمینان

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

  • Docker
  • Azure DevOps
  • GitHub Actions
  • CI/CD
  • Serilog
  • بررسی سلامت
  • xUnit
  • Moq
  • FluentAssertions
  • تست یکپارچه‌سازی
  • تست بار
  • BenchmarkDotNet
۱۱ مهارت

مسیر آکادمیک

روش‌های تانسوری، یادگیری ماشین و داده‌کاوی، به‌علاوهٔ هوش مصنوعی کاربردی و نظریهٔ سؤال–پاسخ.

  • تجزیهٔ تانسوری
  • t-SVD
  • ضرب تانسوری
  • ماتریسی‌سازی
  • طبقه‌بندی
  • خوشه‌بندی
  • یادگیری ماشین
  • داده‌کاوی
  • نظریهٔ سؤال–پاسخ
  • APIهای LLM
  • Python
۵ مهارت

فراتر از بک‌اند

رابط‌های کاربری وب و موبایل با React و React Native، و APIهای Python با FastAPI.

  • JavaScript
  • React
  • React Native
  • FastAPI
  • Swagger
۴ زبان

چطور ارتباط برقرار می‌کنم

دو زبان مادری، و دو زبان دیگر در سطح حرفه‌ای.

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

نمونه‌کارهای منتخب

سیستم‌های عملیاتی‌ای که ساخته‌ام و رهبری کرده‌ام، و پژوهشی که پشتوانهٔ مسیر آکادمیک من است.

حدود ۸۹ هزار دانش‌آموز
NovaTech · مهندسی

پلتفرم آزمون تطبیقی

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

  • .NET 8
  • EF Core
  • SQL Server
  • Redis
  • Python
خواندن مطالعهٔ موردی
۴۵ تا ۷۰ هزار کاربر هم‌زمان
گزینه دو · مهندسی

دسترس‌پذیری بالا در اوج آزمون‌ها

معماری Redis Sentinel به‌همراه بهینه‌سازی SQL Server و APIها، که پیش از اوج آزمون‌ها با تست بار Locust محک خورد.

  • Redis Sentinel
  • SQL Server
  • RabbitMQ
  • Docker
خواندن مطالعهٔ موردی
بیش از ۵٬۰۰۰ سؤال
Noraco · مهندسی

پردازش سؤال با هوش مصنوعی

خط پردازش PDF به LaTeX با برچسب‌های موضوع، مهارت و سختی که LLM تولید می‌کند، و یک کنسول React برای کنترل کیفیت و انتشار آنلاین.

  • FastAPI
  • React
  • LaTeX
  • APIهای LLM
خواندن مطالعهٔ موردی
بلادرنگ
MBRI · مهندسی

داشبورد شاخص‌های مالی

شاخص‌های زندهٔ بازار و بانکی در یک رابط کاربری، ساخته‌شده روی میکروسرویس‌های ‎.NET Core، پخش زنده با SignalR و کامپوننت‌های نمودار قابل استفادهٔ مجدد.

  • .NET Core
  • SignalR
  • میکروسرویس‌ها
خواندن مطالعهٔ موردی
جایگزین صفحه‌گسترده‌ها
صرافی بانک رفاه · فریلنس

سامانهٔ حسابداری حواله‌های ارزی

سامانهٔ بک‌آفیسی که جای حسابداری حواله‌های ارزی با صفحه‌گسترده را گرفت: حواله‌ها، کارمزدها، مانده‌های طرف حساب‌ها و گزارش‌ها، به‌همراه ابزاری برای انتقال داده‌های قدیمی.

  • ASP.NET Core
  • EF Core
  • SQL Server
خواندن مطالعهٔ موردی
پایان‌نامهٔ کارشناسی ارشد
دانشگاه تربیت مدرس · آکادمیک

یادگیری کلان‌داده با نمایش تانسوری

tc-SVD، تجزیه‌ای تانسوری بر پایهٔ ضربی مبتنی بر تبدیل کسینوسی که داده را برای طبقه‌بندی و خوشه‌بندی به فضای ویژگی فشرده‌ای می‌برد.

  • تجزیهٔ تانسوری
  • t-SVD
  • خوشه‌بندی
خواندن خلاصه

پروژه‌های متن‌باز در گیت‌هاب

MATLAB
github.com/mahdipc/tcSVD

tcSVD

tc-SVD و t-SVD در MATLAB، همراه با طبقه‌بندی و خوشه‌بندی تانسوری و به‌روزرسانی افزایشی، برگرفته از پژوهش کارشناسی ارشدم.

  • tc-SVD
  • t-SVD
  • DCT
  • خوشه‌بندی
مشاهده در گیت‌هاب
C# · .NET
github.com/mahdipc/Dima.Finance

Dima.Finance

بک‌اند مدیریت مالی برای حساب‌ها، تراکنش‌ها و وام‌ها، با ساختار Clean Architecture، DDD و CQRS.

  • ASP.NET Core
  • EF Core
  • MediatR
  • Redis
مشاهده در گیت‌هاب
۱۰ مقاله
github.com/mahdipc · Mathematica

کدهای آنالیز عددی

نوت‌بوک‌های Mathematica که آزمایش‌های مقاله‌های آنالیز عددی دربارهٔ معادلات انتگرالی، روش‌های موجک و طرح‌های رونگه–کوتا را بازتولید می‌کنند.

  • معادلات انتگرالی
  • موجک‌ها
  • Mathematica
مشاهده در گیت‌هاب

جوایز و افتخارات

برنامه‌نویسی رقابتی و یادگیری ماشین، در رقابت با هزاران شرکت‌کننده.

#138

از بیش از ۵۰ هزار شرکت‌کننده

برنامه‌نویسی رقابتی کوئرا

5 نفر برتر

از بیش از ۲٬۰۰۰ شرکت‌کننده

مسابقهٔ C#‎ هم‌کد، ۲۰۲۱

رتبهٔ 3

از بیش از ۵٬۰۰۰ شرکت‌کننده

مسابقهٔ جاوااسکریپت هم‌کد، ۲۰۲۱

فینالیست

یادگیری ماشین

مسابقهٔ یادگیری ماشین فناورد، ۲۰۱۸

یادداشت‌های پژوهشی و وبلاگ

نوشته‌هایی دربارهٔ روش‌های تانسوری، کلان‌داده و مهندسی بک‌اند.

زمان تماشای واقعی از دل لاگ‌های پرنویز پلیر ویدیو

پلیر ویدیو رویدادهای پخش،‏ مکث،‏ جابه‌جایی نشانگر و ضربان می‌فرستد و بعضی از آن‌ها هیچ‌وقت نمی‌رسند. این یادداشت می‌گوید چطور این داده‌های پرنویز را با .NET 10 و SQL Server به زمان تماشای قابل‌اتکا برای هر یادگیرنده تبدیل کردم.

خواندن مقاله

یادداشت‌های بک‌اند ۱: Redis Sentinel در اوج آزمون تا ۷۰٬۰۰۰ کاربر

سامانه‌های آزمون هفته‌ها آرام‌اند و بعد همه با هم می‌آیند. فیل‌اوور خودکار با Redis Sentinel،‏ تنظیم StackExchange.Redis،‏ کش بدون هجوم هم‌زمان و تست بار با Locust،‏ از ساختاری که ۴۵٬۰۰۰ تا ۷۰٬۰۰۰ کاربر هم‌زمان را تحمل می‌کرد.

خواندن مقاله

یادداشت‌های تانسوری ۱: داده‌تان را صاف نکنید

بیشتر روش‌های یادگیری ماشین تصویر و ویدیو را به بردارهای بلند تبدیل می‌کنند و ساختار داده در این مسیر گم می‌شود. معرفی ساده‌ای از تانسورها: مُدها،‏ فیبرها،‏ اسلایس‌ها و این‌که چرا حفظ شکل داده ارزشش را دارد.

خواندن مقاله