تکنولوژیها و ابزارهای حرفهای من
بهعنوان مهندس فولاستک، برای ساخت وباپلیکیشنهای مقیاسپذیر و پرسرعت به مجموعهای از فناوریها و ابزارهای دقیق انتخابشده تکیه میکنم. اینها ابزارهایی هستند که هر روز در کارم استفاده میکنم.
فناوریهای فرانتاند
React و اکوسیستم آن
کتابخانه اصلی من برای ساخت رابط کاربری. از اکوسیستم React شامل React Router، React Query و کتابخانههای مختلف hook برای ساخت اپلیکیشنهای مستحکم استفاده میکنم.
Next.js
تقریباً در همه پروژههایم از Next.js استفاده میکنم؛ به خاطر رندر سمت سرور، تولید صفحات ایستا، API Routes و تجربه توسعه عالی.
TypeScript
تایپاسکریپت بخش جدانشدنی کار من است؛ برای امنیت نوعها، پشتیبانی بهتر ادیتور و گرفتن خطاها پیش از رسیدن به محیط production. کیفیت و نگهداریپذیری کد را به شدت بالا میبرد.
TailwindCSS
راهکار محبوب من برای استایلدهی؛ به خاطر رویکرد utility-first، امکان شخصیسازی بالا و ساخت سریع طراحیهای واکنشگرا.
Redux و Zustand
برای مدیریت state در اپلیکیشنهای بزرگ از Redux و برای نیازهای سادهتر از Zustand استفاده میکنم. هر دو state قابل پیشبینی و ابزارهای توسعه عالی دارند.
میز کار
لنوو ThinkPad (رایزن ۷، ۳۲ گیگ رم) با Debian
سیستم روزانه من با Debian و zsh؛ پایداری فوقالعاده برای ساعتها کدنویسی و کار با Docker.
مانیتور ۲۷ اینچ 1440p با پنل IPS
فضای کافی برای کد، مرورگر و مستندات در کنار هم؛ کالیبرهشده برای خواندن راحت.
کیبورد Keychron K2 (سوییچ Gateron Brown)
کیبورد مکانیکی جمعوجور با سوییچهای تکتایل؛ آنقدر بیصدا که برای جلسهها مناسب باشد و برای تایپ طولانی لذتبخش.
ماوس Logitech MX Master 3S
ماوس ارگونومیک با اسکرول نرم و میانبرهای اختصاصی هر برنامه؛ عالی برای گشتوگذار در کدبیسهای بزرگ.
میز و صندلی ارگونومیک
میز با ارتفاع قابل تنظیم و صندلی مناسب تا در اسپرینتهای طولانی وضعیت بدنی درست بماند.
ابزارهای توسعه
VS Code
ادیتور اصلی من با افزونههای ESLint، Prettier، GitLens و پشتیبانی از زبانهای مختلف. میانبرها و تنظیمات شخصی بهرهوریام را به حداکثر میرساند.
Git و GitHub
کنترل نسخه با Git و GitHub برای همکاری، بازبینی کد با Pull Request و یکپارچگی CI/CD. طرفدار جدی Git Flow و پیامهای کامیت معنادار هستم.
ترمینال (Warp با Oh My Zsh)
ترمینال شخصیسازیشده با aliasهای کاربردی، یکپارچگی با Git و تمی که کار با خط فرمان را هم سریع و هم زیبا میکند.
Docker
برای کانتینرسازی و یکسان نگه داشتن محیط توسعه در کل تیم؛ تا محیط لوکال تا حد ممکن شبیه production باشد.
طراحی و همکاری
Figma
برای همکاری در طراحی UI/UX، نمونهسازی و نگهداری دیزاین سیستم ضروری است. با طراحان در فیگما همکاری نزدیک دارم تا پیادهسازی پیکسلبهپیکسل باشد.
Miro
برای طوفان فکری، برنامهریزی معماری و همکاری تیمی؛ عالی برای ترسیم سفر کاربر و دیاگرامهای فنی.
تست و تضمین کیفیت
Jest و React Testing Library
ابزارهای من برای نوشتن تستهای واحد و یکپارچه. تمرکزم روی تست رفتار کاربر است، نه جزئیات پیادهسازی، تا تستها قابل اعتمادتر باشند.
Cypress
برای تست end-to-end تا مطمئن شوم کل مسیر کاربر درست کار میکند؛ برای پیدا کردن مشکلات یکپارچگی پیش از استقرار بینظیر است.
ESLint و Prettier
ابزارهای کیفیت و قالببندی کد که یکدستی را در کل تیم حفظ میکنند، با تنظیمات اختصاصی برای اجرای استانداردهای کدنویسی ما.
بهرهوری و مدیریت تیم
Linear
مدیریت تسک و پروژه با یکپارچگی عالی با GitHub؛ بهترین گزینه برای برنامهریزی اسپرینت و پیگیری پیشرفت.
Notion
مستندات تیم، صورتجلسهها و پایگاه دانش؛ برای مشخصات فنی، راهنماهای تیم و نگهداری فرایندهای توسعه.
Slack
ابزار اصلی ارتباط تیمی با اتصال به اعلانهای GitHub، بهروزرسانیهای استقرار و بازبینی کد.