از خواندن برای ساختن یک کتابخانه دست بکشید. برای حل یک مسئله بخوانید.
بیشتر لیستهای مطالعه مهندسی بر جمعآوری دانش تمرکز دارند.
مهندسی مدرن تنها یک چیز را پاداش میدهد: رفع گلوگاهها.
اخیراً یک مهندس جونیور لیستی از ۱۰ کتاب برتر برای مهندسان را به من نشان داد. این لیست دقیقاً شبیه لیستهای ده سال پیش بود؛ بر همان کتابهای کلاسیک قدیمی و کتابهای فرآیندی تکیه داشت.
این فرض اشتباه است. مطالعه کتابها به طور خودکار از شما مهندس بهتری نمیسازد.
تیمهای با عملکرد بالا، برنامههای یادگیری خود را حول محور کتابها نمیسازند، بلکه آنها را حول محدودیتها (constraints) بنا میکنند.
لیستهای مطالعه استاندارد فرض میکنند که همه دانش ارزش یکسانی دارد. در واقعیت، ارزش مهندسی به موقعیت خاص شما بستگی دارد.
- یک مهندس بکاند (backend) که با مشکلات پایگاه داده روبروست، نیازی به کتاب Agile ندارد.
- تیمی با هزینههای بالای هوش مصنوعی، نیازی به یک کتاب نرمافزاری عمومی ندارد.
- یک استارتاپ با مشکلات تأخیر (latency)، نیازی به یک چارچوب رهبری ندارد.
این افراد به راهکارهایی برای گلوگاه خاصی که مقابلشان قرار دارد نیاز دارند.
مهندسی به مرتبط بودن پاداش میدهد، نه به کامل بودن.
مبانی مانند پایگاه داده و شبکه همچنان مهم هستند، اما دیگر کافی نیستند. سیستمهای مدرن چالشهای جدیدی مانند هزینههای استنتاج هوش مصنوعی (AI inference costs) را به همراه دارند.
برای دههها، مهندسان با سیستمهای قطعی (deterministic) کار میکردند. ورودی یکسان همیشه خروجی یکسانی تولید میکرد.
امروزه، بسیاری از سیستمها احتمالی (probabilistic) هستند. یک پرامپت هوش مصنوعی ممکن است هر بار پاسخهای متفاوتی بدهد. ارتقای یک مدل میتواند بدون اینکه شما کدی را تغییر دهید، نحوه عملکرد اپلیکیشن شما را تغییر دهد.
سوالات جدید، پیشبرنده کار شما هستند:
- چگونه کیفیت را ارزیابی میکنید؟
- چگونه اجزای غیرقابل پیشبینی را مدیریت میکنید؟
قویترین مهندسان برای یادگیری مکانیسمها مطالعه میکنند، نه برای تمام کردن یک کتاب. آنها یک گلوگاه را پیدا میکنند و منطق خاص مورد نیاز برای رفع آن را میآموزند.
- اگر تأخیر (latency) بالا است، روی دستهای کردن (batching) مطالعه کنید.
- اگر بافت (context) از دست میرود، روی بازیابی (retrieval) مطالعه کنید.
- اگر عوامل هوش مصنوعی (AI agents) شکست میخورند، روی ارزیابی (evaluation) مطالعه کنید.
این کار، یادگیری را به نتایج عملیاتی متصل میکند. دانش شما به یک اهرم فوری تبدیل میشود.
از این چرخه یادگیری استفاده کنید:
- گلوگاه را شناسایی کنید.
- منبع خاص برای رفع آن را پیدا کنید.
- آن را در سیستم اعمال کنید.
قبل از شروع کتاب بعدی، یک سوال از خود بپرسید: بزرگترین محدودیت در سیستم من در حال حاضر چیست؟
آیا تأخیر (latency) است، یا هزینه، قابلیت اطمینان (reliability) یا مشاهدهپذیری (observability)؟
منبعی را پیدا کنید که مستقیماً به آن مشکل حمله میکند. محبوبترین کتاب را انتخاب نکنید. کتابی را انتخاب کنید که محدودیت شما را حل میکند.
مهندسی یک مسابقه مطالعه نیست. مهندسی حرفهای برای حل محدودیتهاست. اجازه دهید سیستم شما تصمیم بگیرد که در مرحله بعد چه چیزی یاد بگیرید.
انجمن یادگیری اختیاری: https://t.me/GyaanSetuAi