کدنامهمرجع‌های مهندسی نرم‌افزار، به فارسی

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

Software engineering skills

هیچ‌کس به‌خاطر ندانستن یک تابع اخراج نمی‌شود. آدم‌ها به‌خاطر تخمین‌های غلط، کدی که کسی نمی‌تواند نگهداری کند، و نتوانستن توضیح کارشان گیر می‌کنند. این مسیر دربارهٔ همان چیزهاست.

۱۷فصل
۲۷۳تمرین با پاسخ
≈ ۲۳ ساعتزمان تخمینی
۳پروژهٔ نهایی

پیشرفت تو

۰٪

درصد هر فصل از دو چیز می‌آید: چقدر از بخش‌هایش را خوانده‌ای (۵۵٪) و چند تمرینش را تیک زده‌ای (۴۵٪). همه‌چیز داخل مرورگر خودت می‌ماند.

فصل

فصل‌ها به هم وابسته‌اند و ترتیبشان معنا دارد. هر مسیر با پروژه‌های نهایی تمام می‌شود: ساده، متوسط، پیچیده.

۱

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

کدنویسی کمتر از نصف کار است.

در نوبت نوشتن
۲

خواندن کد دیگران

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

در نوبت نوشتن
۳

نوشتن کد قابل نگهداری

نام‌گذاری، اندازهٔ تابع و کامنتی که ارزش دارد.

در نوبت نوشتن
۴

code review: دادن و گرفتن

نقد کد بدون نقد آدم.

در نوبت نوشتن
۵

اشکال‌زدایی سیستماتیک

فرضیه، آزمایش، حذف — به‌جای حدس زدن.

در نوبت نوشتن
۶

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

چرا همیشه طولانی‌تر می‌شود، و چه کارش می‌شود کرد.

در نوبت نوشتن
۷

نوشتن مستند فنی

RFC، ADR و مستندی که خوانده شود.

در نوبت نوشتن
۸

ارتباط با غیرفنی‌ها

ترجمهٔ تصمیم فنی به زبان اثر.

در نوبت نوشتن
۹

کار تیمی و جریان Git

شاخه، commit خوانا و حل تعارض.

در نوبت نوشتن
۱۰

مصاحبهٔ فنی

الگوریتم، طراحی سیستم و سؤال رفتاری.

در نوبت نوشتن
۱۱

رزومه و نمونه‌کار

نوشتن اثر، نه فهرست تکنولوژی.

در نوبت نوشتن
۱۲

یادگیری مداوم

چطور یاد بگیری بدون غرق شدن در ابزار جدید.

در نوبت نوشتن
۱۳

مدیریت زمان و تمرکز

کار عمیق در محیطی پر از وقفه.

در نوبت نوشتن
۱۴

رشد شغلی: junior تا senior

تفاوت واقعی سطح‌ها چیست.

در نوبت نوشتن
۱۵

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

README، ADR و راهنمای شروع.

در نوبت نوشتنپروژهٔ ساده
۱۶

پروژهٔ ۲ — review و بهبود کد دیگران

خواندن، نقد سازنده و refactor.

در نوبت نوشتنپروژهٔ متوسط
۱۷

پروژهٔ ۳ — نمونه‌کار قابل ارائه

پروژه‌ای با مستند، تست، CI و توضیح تصمیم‌ها.

در نوبت نوشتنپروژهٔ پیچیده