کد زرد و کد قرمز تو بحرانهای مهندسی
خلاصهٔ کاملتر
جیمز استنیر مینویسه اواخر ۲۰۲۵ تو Provet هفتهای نبود که یه جور افت زیرساختی نداشته باشن. قطعیها روی هم تلنبار میشدن، عیبیابیشون سخت بود و مشتریها داشتن صبرشون رو از دست میدادن. وقتی قطعی بزرگ AWS تو اکتبر اتفاق افتاد، مشتریها اصلاً فرقی بین مشکل آمازون و مشکل خودشون نمیذاشتن، چون ماهها بیثباتی قبلش اعتماد رو خورده بود.
پس اولین «کد زرد» تاریخ شرکت رو اعلام کردن: یه اطلاعیهٔ مکتوب شرکتی که خود مفهوم، ساختار، معیار خروج و دلیلش رو توضیح میداد. هدف ساده بود؛ سفتکردن SLAها و هشت هفتهٔ متوالی بدون قطعی. به روایت نویسنده به هدف رسیدن، با فقط یه افت کوتاه تو کل دوره.
خود اصطلاح از گوگل اومده؛ به روایت استیون لوی تو کتاب In The Plex، اسمش از یه تاپ زرد متعلق به وین روزینگ گرفته شده که هر کی میپوشیدش میتونست هر کسی رو از پروژهش بکنه و بیاره کمک. فرقشون اینه که کد زرد یعنی جدی ولی نه وجودی، هفتهها تا ماهها؛ کد قرمز یعنی تهدید وجودی، همهجانبه و با توقف کامل کار عادی. ولی نویسنده تأکید میکنه قدرت واقعی تو خود جدول تعریفها نیست، تو زبان مشترکه: وقتی همه بدونن «کد زرد» یعنی چی، دیگه لازم نیست سر اولویت چونه بزنی.
روش کارشون این بود که استک رو از پایین به بالا راه برن: از دیتابیسها و هر چیزی که بهشون وصله شروع کردن، الگوهای دسترسی و فراخوانیهای API رو تحلیل کردن، بعد رفتن بالاتر سراغ ریتلیمیتینگ. همزمان از بیرون به داخل هم نگاه کردن تا شکافهای مانیتورینگ و هشدار رو پیدا کنن. حاصلش: بهبود ریتلیمیتینگ، رفع تایماوتهای دیتابیس، اضافهکردن circuit breaker، مهاجرت از Redis تو نقاط گلوگاهی و رفع نشت حافظه تو تسکهای پسزمینه.
یه تصمیم ساختاری مهم، اختیار «تلنگر روی شونه» بود: هر کسی که روی کد زرد کار میکرد میتونست به تیم صاحب یه اندپوینت کند بگه همین حالا اولویتش رو عوض کنه. به گفتهٔ نویسنده این اختیار فقط وقتی کار میکنه که کل شرکت مفهوم رو بفهمه و پشتش باشه، برای همین اطلاعرسانی اولیه اینقدر مهم بود. بهروزرسانیها هم تو یه کانال عمومی اسلک با عمد بیشازحد بهاشتراک گذاشته میشد.
قالب پیشنهادیش چهار جزء داره: بیان مسئلهای که هر کسی بتونه تکرارش کنه، معیار خروج مشخص و قابل اندازهگیری که قبل از شروع تعریف بشه، بازهٔ زمانی که از یه فصل بیشتر نباشه، و ساختار اختیار روشن. نکتهٔ فرهنگیش هم اینه که اعلام کد زرد نباید اعتراف به شکست حساب بشه؛ اگه هشدار زودهنگام تنبیه بشه، دفعهٔ بعد مستقیم میرین سراغ کد قرمز.
آخر مقاله چهار حالت شکست رو هشدار میده: استفادهٔ زیادی که سیگنال رو بیارزش میکنه، تشریفات نمایشی که اتاق جنگ رو به تئاتر تبدیل میکنه، ناتوانی در خروج که فوریت رو دائمی میکنه، و وسوسهٔ میانبر که با اضافهکردن بدهی فنی از بحران فرار میکنه و چند ماه بعد برت میگردونه سر جای اول.
نکات کلیدی:
- کد زرد یعنی مشکل جدی و نیازمند تمرکز فوری؛ کد قرمز یعنی تهدید وجودی و توقف کامل کار عادی
- اصطلاح از گوگل اومده و بین لینکدین، متا، شاپیفای، اینستاکارت و OpenAI هم رایج شده
- معیار خروج Provet: هشت هفتهٔ متوالی بدون قطعی، که محقق شد
- چهار جزء لازم قبل از شروع: بیان مسئله، معیار خروج، بازهٔ زمانی و ساختار اختیار
- شفافیت در سطح کل شرکت اختیاری نیست؛ کد زرد نامرئی فقط یه تیم خستهٔ بیپشتیبانه
- خروج باید بر اساس معیار باشه، نه خستگی؛ و رتروی بعدش باید تغییر سیستمی بسازه




