دو داستان در یک هفته منتشر شدند و بیشتر مردم آنها را جدا از هم خواهند خواند. یکی درباره تعدیل نیروست. دیگری درباره پژوهشگر امنیتیای است که مشغول بررسی مادربردهای سرور است. اگر این دو را کنار هم بخوانید، به یک تغییر مسیر شغلی اشاره میکنند که در گفتوگوی کنونی درباره مهارتهای هوش مصنوعی تقریباً هیچ بازتابی ندارد: پایین رفتن در پشته، نه بالا رفتن در آن.
لایهٔ اپلیکیشن عمداً در حال شلوغتر شدن است
ورود متا به کدنویسی عاملمحور، Muse Code، بیشتر بهخاطر گردشکاری که خودکار میکند قابل توجه است تا مدلی که پشت آن قرار دارد. زاکربرگ توضیح داد که این ابزار کار را «به زیرعاملهای جداگانهای که بهطور موازی در ورکتریهای ایزوله کار میکنند» تقسیم میکند و مدعی شد یک اجرای آزمایشی، همزمان شش قابلیت برای یک بازی ساخته، بدون آنکه تداخلی رخ دهد. این حالا دیگر حداقل انتظار است: Anthropic، OpenAI و موجی از استارتاپها پیشاپیش نسخههایی از همین کار را انجام میدهند. برنامهریزی، نوشتن و اعتبارسنجی کد لایهٔ اپلیکیشن در مخازن بزرگ، در حال تبدیل شدن به قابلیتی عام و ارزان است که چندین فروشنده با شتاب در تلاشاند آن را رایگان ارائه دهند یا با هزینهای اندک در بستههای خود بگنجانند.
در همین حال، Monday.com حدود 20٪ از نیروی کار خود، یعنی تقریباً 600 نفر، را کاهش داد و به بازسازی سازمانی مرتبط با «تحول» محصول و عرضه به بازار استناد کرد؛ به فهرست در حال گسترشی از بیش از 20 شرکت پیوست که امسال هوش مصنوعی را یکی از عوامل تعدیل نیرو اعلام کردهاند. هیچکس نمیتواند دقیقاً بگوید چه میزان از این موارد جایگزینی با هوش مصنوعی بوده و چه میزان استفاده از هوش مصنوعی بهعنوان عبارتی convenient در گزارش SEC. اما جهت حرکت در هر دو داستان یکسان است: کدی که در یک مخزن git زندگی میکند، در قالب یک PR بازبینی میشود و در یک خط لولهٔ عادی CI اجرا میشود، دقیقاً همان کدی است که ابزارهای عاملمحور برای مدیریت سرتاسری آن ساخته میشوند.
چیزهایی که عاملها به آنها دست نمیزنند
حالا داستان دوم. پژوهشگران این هفته یافتههایی ارائه کردند که نشان میدهد هزاران سرور متصل به اینترنت از تولیدکنندگان بزرگ را میتوان از راه دور، از طریق باگهایی در کنترلرهای مدیریت برد پایهشان (BMC)، درِ پشتی گذاشت — همان رایانههای کوچکِ تعبیهشدهای که تقریباً روی هر مادربرد سازمانی وجود دارند و به مدیران اجازه میدهند حتی وقتی دستگاه خاموش است، آن را دوباره راهاندازی کنند، وصله بزنند یا از نو ایمیجگیری کنند. برخی از نقصهای زیربنایی در پروتکل IPMI که این کنترلرها به آن متکیاند، دستکم از 2013 شناخته شدهاند. پژوهشگران زیرساخت BMC را «سطح حملهٔ موازیِ فراگیر، کمنظارت و کموصله» نامیدند — نه به این دلیل که کسی از وجود خطر خبر نداشت، بلکه چون تقریباً هیچکس منابع لازم برای رفع آن را نداشت.
همین نکته تعیینکننده است. این کدِ اپلیکیشن نیست. این میانافزار است که سیستمعامل و پشتهٔ شبکهٔ خودش را اجرا میکند و تا حد زیادی از دید ابزارها و گردشکارهایی که دستیارهای کدنویسی عاملمحور برایشان بهینه شدهاند، پنهان است. عاملی که برای یک مخزن بزرگ برنامهٔ PR میریزد، در اینجا چیزی برای برنامهریزی ندارد — نه مخزنی وجود دارد، نه مجموعهآزمونی، اغلب نه انگیزهای از سوی فروشنده برای عرضهٔ سریع رفعنقص، و نه فرایند وصلهای که از مسیر `git push` عبور کند؛ این فرایند از تولیدکنندگان سختافزار میگذرد. مهارتهای مهم — C تعبیهشده، اشکالزدایی در سطح پروتکل، مهندسی معکوس میانافزار و پژوهش امنیتیِ مجاور سختافزار — در بخشی از پشته قرار دارند که عاملهای کدنویسی نسل کنونی برای رسیدن به آن ساخته نشدهاند و بیشتر سازمانهای مهندسی نیز بهطور مزمن در آن سرمایهگذاری نکردهاند؛ نقصهای شناختهشدهٔ یک دهه پیش، خود گواه این موضوعاند.
احتیاط، بهصراحت
این فراخوانی برای آن نیست که هر توسعهدهندهای دوباره بهعنوان مهندس میانافزار آموزش ببیند — این بازاری تخصصی است و تقاضا برای آن با نقشهای رایج نرمافزاری برابری نخواهد کرد. استدلال محدودتر است: اگر نقش فعلیتان دقیقاً در بخشی از پشته قرار دارد که ابزارهای عاملمحور با بیشترین سرعت به سمت آن همگرا میشوند — کدهای معمول اپلیکیشن، کاملاً درون یک مخزن واحد و بهخوبی پوششدادهشده با آزمونها — ارزش دارد بدانید لایههای مجاور و پایینتری وجود دارند که مرز خودکارسازی هنوز به آنها نرسیده، مهارتهایشان بدون دکتری علوم کامپیوتر قابل یادگیری است و نشانهٔ تقاضا برایشان (یک سطح حملهٔ وصلهنشدهٔ یکدههای که بهتازگی در مقیاسی بزرگ بهصورت عمومی نمایش داده شده) بهطور غیرمعمولی ملموس است.
این ماه، واقعاً از کجا شروع کنیم
- پژوهش اصلی را بخوانید، نه فقط خلاصهٔ آن را. گزارش Ars Technica نام پروتکل (IPMI) و ردهٔ سختافزار (BMCهای تولیدکنندگان بزرگ سرور) را ذکر میکند — این نقطهٔ شروع عبارتهای جستوجوی شما برای اطلاعیههای فروشندگان و سوابق CVE است.
- با یک پشتهٔ باز BMC کار عملی انجام دهید. پروژههای میانافزار متنباز OpenBMC و نمونههای مشابه به شما اجازه میدهند بدون نیاز به مرکز داده، کد واقعی BMC را بخوانید و تغییر دهید — یک آخرهفته برای دیدن تفاوت این حوزه با توسعهٔ وب یا اپلیکیشن کافی است.
- همین حالا، حتی پیش از آموزش مجدد، زبان رزومهتان را بازتعریف کنید. عبارتهای «مدیریت خارج از باند»، «مدیریت بدون حضور اپراتور» و «سطح حمله پایینتر از سیستمعامل» همان عبارتهایی هستند که باعث میشوند تیمهایی که برای این حوزه نیرو میگیرند شما را پیدا کنند، و اگر تجربهتان واقعاً با این کار مجاور است، افزودنشان هیچ هزینهای ندارد.
- با آن مانند تنوعبخشی رفتار کنید، نه تغییر مسیر کامل. به ارسال کد اپلیکیشن ادامه دهید — این هنوز بخش عمدهٔ بازار کار است — اما بخشی آگاهانه از بودجهٔ یادگیریتان را در جایی صرف کنید که یک عامل هنوز نمیتواند به یک ورکتری گسترش پیدا کند و آن را بهجای شما اصلاح کند.