/about

درباره من

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

/working profile

محصول خوب باید در اجرا هم قابل توضیح بماند.

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

/principles

چیزهایی که در تصمیم فنی برایم مهم‌اند

این‌ها شعار نیستند؛ معیارهایی‌اند که روی شکل کد، مدل داده، مسیر انتشار و تجربه کاربر اثر می‌گذارند.

  1. 01

    قابل نگهداری بودن

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

  2. 02

    پایداری در محیط واقعی

    تصمیم‌هایی که فقط در محیط توسعه کار نکنند و در اجرا هم دوام بیاورند.

  3. 03

    سادگی معماری

    ساده نگه داشتن مرزها تا زمانی که پیچیدگی واقعا لازم شود.

  4. 04

    تجربه کاربری

    رابط و جریان کاری باید مسئله کاربر را کم کند، نه فقط ظاهر محصول را بهتر کند.

  5. 05

    قابلیت توسعه

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

  6. 06

    مشاهده‌پذیری

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

  7. 07

    امنیت

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

  8. 08

    کارایی

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

/experience notes

زمینه‌های کاری، بدون ساختن رزومه جعلی

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

/tools and environment

ابزارها، محیط و دامنه فنی

Frontend

Vue / Nuxt / Astro / TypeScript / JavaScript

Backend

PHP / Laravel / REST APIs

Data

PostgreSQL / MySQL / MariaDB / Redis

Infrastructure

Linux / Docker / Kubernetes / Nginx / CI/CD

Workflow

Git / Neovim / VS Code

/next

برای دیدن یک نمونه جدی از این رویکرد، مطالعه موردی صبا را ببینید.