حالت تاریک
فصل ۱۰ — پنجشنبه، ۱۱ سپتامبر
صبح روشن و زود، دوباره در اتاق جنگ Phoenix هستم. Kirsten در ابتدای هر روز مهمترین کارهای پروژه Phoenix را مرور میکند. چون ریسکها آنقدر بالاست، کارهای متعهدشده معمولاً توسط مدیر مسئول «انجامشده» گزارش میشوند.
کسی نمیخواهد Kirsten را ناراحت کند. یا Steve را، برای آن موضوع.
خبر بد روز از William Mason، مدیر Quality Assurance که برای Chris کار میکند، میآید. ظاهراً هنوز دو برابر ویژگیهای خراب پیدا میکنند نسبت به آنچه درست میشود.
وقتی قطعات از ماشین در حال حرکت روی خط مونتاژ میافتند، هرگز نشانهٔ خوبی نیست. جای تعجب نیست همه از تاریخ استقرار میترسیم.
در حال فکر کردن به اینکه چطور بخشی از این ریسک را کاهش دهیم، برای سومین بار Kirsten نام Brent را صدا میزند. و برای سومین بار، Wes باید توضیح دهد چرا چیزی انجام نشده.
Sarah از پشت اتاق میگوید: «Wes، باز هم گلوگاه تیم تو هستیم. مسائل پرسنلی هست که باید رسیدگی کنی؟»
Wes سرخ میشود و دارد جواب میدهد که سریع وارد میشوم: «Kirsten، چند کار دیگر به Brent محول شده؟»
Kirsten سریع جواب میدهد: «از امروز، پنج کار باز مانده. سهتایشان چهارشنبهٔ گذشته محول شد و دوتایشان جمعهٔ گذشته.»
«باش، دستم است،» میگویم. «به محض تمام شدن اینجا بررسی میکنم چه خبر است. تا ظهر امروز گزارش وضعیت و جدول زمانی بازنگریشده برای تکمیل انتظار داشته باش. اگر چیزی لازم داشتیم خبرت میکنم.»
در راه به cube Brent در ساختمان ۷، به خودم یادآوری میکنم هدفم مشاهده و تلاش برای فهمیدن است. بالاخره، از روزی نقش جدیدم را پذیرفتم هر روز اسم این مرد در گفتگو آمده.
شاید Brent واقعاً آنقدر باهوش نیست که فکر میکنیم. یا شاید یک Einstein فناوری است و هر تلاشی برای پیدا کردن افراد همسطحش شکست میخورد. یا شاید عمداً تلاشهایمان برای برداشتن کار از دوشش را خراب میکند.
ولی Brent حرفهای و باهوش به نظر میرسد، چندان با senior engineerهایی که قبلاً باهاشان کار کردهام فرق ندارد.
وقتی به میزش نزدیک میشوم، میشنوم تلفن است و روی کیبورد تایپ میکند. جلوی چهار مانیتورش نشسته با headset، چیزی در یک برنامهٔ terminal تایپ میکند.
بیرون cube میایستم و با احتیاط گوش میدهم.
میگوید: «نه، نه، نه. database بالا و در حال اجراست. بله، میدانم چون جلوی چشمم است… بله، میتوانم query بزنم… بله… بله… نه… میگویم باید application server باشد… بالاست؟ باش، بگذار ببینم… صبر کن، بگذار sync دستی امتحان کنم. الان امتحان کن…»
گوشی همراهش زنگ میخورد. «یک لحظه، تماس دیگری دارم. همین الان برمیگردم.»
چیزی روی یک Post-it مینویسد و کنار دو Post-it دیگر روی مانیتور میچسباند. با عصبانیت گوشی را جواب میدهد: «بله، Brent… کدام سرویس از کار افتاده؟ reboot کردید؟ ببین، الان واقعاً سرم شلوغ است با Phoenix — عصر امروز برمیگردم؟»
در حال تبریک خاموش به خودم هستم که میشنوم میگوید: «آها… اصلاً نمیدانم آن کیست. VP چه؟ باش، بگذار نگاه کنم.»
آه میکشم و در یک cube خالی مینشینم تا قسمت امروز «یک روز در زندگی Brent» را تماشا کنم.
پنج دقیقه دیگر تلفن است و فقط بعد از اینکه یک database تولیدی حیاتی دوباره بالا آمد قطع میکند.
قدردانم که Brent واقعاً به نظر میرسد اهمیت میدهد همهٔ کسانی که به سامانههای IT متکیاند کارشان را انجام دهند، ولی ناراحتم که همه انگار از او بهعنوان Geek Squad شخصی و رایگان استفاده میکنند. به قیمت Phoenix.
Brent یکی از Post-itها را از مانیتور برمیدارد و تلفن را برمیدارد. قبل از شمارهگیری، بلند میشوم و میگویم: «سلام Brent.»
«آه!» با وحشت فریاد میزند. «چند وقت است اینجایی؟»
«فقط چند دقیقه،» با دوستانهترین لبخندم میگویم و کنارش مینشینم. «به اندازهٔ کافی دیدم دو نفر را درست کنی. قابل تحسین است، ولی تازه از stand-up روزانه Phoenix Kirsten آمدهام. پنج کاری به تو محول شده که الان دیر شده.»
پنج کار از جلسهٔ مدیریت پروژه را نشان میدهم. سریع میگوید: «همهٔ اینها را نصفه انجام دادهام. فقط چند ساعت وقت آرام کاری لازم دارم تا تمام شوند. اگر میتوانستم از خانه انجام میدادم، ولی اتصال شبکه خیلی کند است.»
«کیها زنگ زدهاند و چه میخواهند؟» با اخم میپرسم.
«معمولاً بقیهٔ IT که مشکل درست کردن چیزی دارند،» با چشمغلطک زدن جواب میدهد. «وقتی چیزی down میشود، ظاهراً فقط من میدانم کجا باید بگردم.»
«فکر میکردم Wes عدهای استخدام کرده تا بخشی از این escalationها را از تو بگیرند،» میگویم.
دوباره چشمغلطک میزند. «ایده همین بود. ولی بیشترشان مسئولیتهای دیگر داشتند و وقتی لازم داشتیم در دسترس نبودند. بقیه در downsizingها رفتند چون بهاندازهٔ کافی مشغول نبودند. باور کن. ضرری نبود. در نهایت بیشتر آن مسائل را خودم انجام دادم.»
«هر روز چند تماس میگیری؟ این تماسها را جایی log میکنی؟» میپرسم.
«منظورت مثل ticketing system ما؟ نه، چون باز کردن ticket برای هر تماس بیشتر از درست کردن مشکل طول میکشد،» با بیاعتنایی میگوید. «تعداد تماسها به روز بستگی دارد. هفتهٔ گذشته از حالت عادی بدتر بود.»
حالا فهمیدم. شرط میبندم اگر همین الان کسی زنگ بزند و به اندازهٔ کافی بلند فریاد بزند یا اسم ترسناکی بیاورد، Brent ساعتها در مشکل دیگران گیر میافتد.
«سعی کردی به آخرین کسی که زنگ زد پس بدهی. چه چیزی باعث شد بهجای گفتن «برو گم شو» روی مشکل کار کنی؟» میپرسم.
جواب میدهد: «گفت VP Logistics دارد فریاد میزند سفارشهای replenishment ساخته نمیشوند و اگر فوراً درست نشود، فروشگاههایمان در خطر stock-out روی محصولات پرفروش هستند. نمیخواستم کسی باشم که بهخاطر stock-out در فروشگاهها مقصر شناخته شوم.»
لبهایم را به هم میفشارم. مدیران ارشد شرکت که engineerهایم را وادار به انجام خواستهشان میکنند، کاملاً مزخرف است. ولی به خطر انداختن Phoenix بالاتر از حقوقشان است.
بلند میشوم و میگویم: «باش، از این به بعد فقط روی Phoenix کار میکنی. Steve Masters گفته این اولویت همه است. الان بیش از هر زمان پروژه به تو نیاز دارد. انتظار دارم هر کاری که کسی سعی کند به تو بدهد رد کنی.»
Brent همزمان راحت و نگران به نظر میرسد. شاید به آن VP Logistics فکر میکند.
اضافه میکنم: «اگر کسی بهجز Phoenix با تو تماس گرفت، بفرستش پیش Wes. بگذار با همهٔ آدمهای احمق سر و کله بزند.»
با تردید میگوید: «ببین، قدردانم، ولی واقعاً فکر نمیکنم در بلندمدت جواب بدهد. بچههای اینجا به نظر نمیرسد با همهٔ سامانههایمان بهروز باشند. در نهایت دوباره سراغ من میآیند.»
«خب، باید یاد بگیرند. وقتی زنگ زدند، بفرستشان پیش Wes. اگر کسی مشکل داشت، بفرستش پیش من. در واقع، vacation message روی ایمیلت بگذار که به هیچچیز جز Phoenix جواب نمیدهی و بهجایش با… تماس بگیرند.»
با تشویق من، Brent با لبخند کوچک میگوید: «Wes.»
«میبینی؟ داری یاد میگیری.» من هم لبخند میزنم.
به تلفن میز اشاره میکنم: «هر کاری لازم است تا عادت رفتن مستقیم سراغ تو را بشکنی. اجازه دارم زنگ تلفنت را خاموش کنی و پیام voicemail را عوض کنی که در دسترس نیستی و با Wes تماس بگیرند. هر چه لازم است.»
میفهمم با ایستادن اینجا Brent را از Phoenix حواسپرت میکنم، سریع میگویم: «نه، Ellen دستیارم پیام voicemail را برایت عوض میکند.»
Brent دوباره لبخند میزند و میگوید: «نه، نه، نه. خودم میتوانم. ممنون از پیشنهاد.»
شمارهٔ گوشی همراهم را روی Post-it مینویسم و به او میدهم: «Ellen انجام میدهد. به آن کارهای Phoenix نیاز داریم. اگر چیزی از من لازم داشتی زنگ بزن.»
وقتی سر تکان میدهد، به سمت ساختمان ۹ برمیگردم، ولی برمیگردم و میپرسم: «هی، هفتهٔ بعد یک آبجو برات بخرم؟»
موافقت میکند و چهرهاش روشن میشود.
وقتی ساختمان را ترک میکنم، فوراً Patty را زنگ میزنم. وقتی جواب میدهد میگویم: «Wes را بگیر و بیرون اتاق جنگ Phoenix ملاقات کن. باید همین الان نحوهٔ مدیریت escalationها به Brent را عوض کنیم.»
هر سه در اتاق کنفرانس آنطرف راهرو از اتاق جنگ Phoenix مینشینیم.
«با Brent چطور شد؟» Wes میپرسد.
وقتی میگویم Brent نتوانسته روی Phoenix کار کند بهخاطر همهٔ کار break-fix، رنگش میپرد. «در همهٔ آن جلسات اورژانس بوده! چطور ممکن است چیزی مهمتر از Phoenix بداند!»
میگویم: «سؤال خوبی است. چرا Brent Phoenix را رها کند برای کار چیز دیگری؟»
لاف Wes برای چند لحظه ناپدید میشود. «احتمالاً چون کسی مثل من داشت بهش فریاد میزد که حتماً به کمکش برای مهمترین کارم نیاز دارم. و احتمالاً درست است: برای خیلی چیزها، Brent تنها کسی است که میداند واقعاً چطور کار میکنند.»
«اگر من بودم، با گفتن «فقط چند دقیقه طول میکشد» توجیه میکردم…» Patty میگوید. «که شاید درست باشد، ولی مثل مرگ با هزار بریدن است.»
«فرایندها باید از مردم محافظت کنند. باید بفهمیم چطور از Brent محافظت کنیم،» میگویم. بعد توضیح میدهم که قبلاً به Brent گفتهام همهٔ کسانی که چیزی میخواهند را بفرستد پیش Wes.
«چی؟ میخواهی همهٔ وقتش را micromanage کنم؟ وقت ندارم secretary Brent باشم یا نوعی help desk!» فریاد میزند.
«باش، روی بشقابت چی هست که مهمتر از این است مطمئن شوی منابعت کار حیاتی Phoenix را انجام میدهند؟» میپرسم.
Wes چند لحظه سنگین به من نگاه میکند و بعد میخندد. «باش، گرفتم. ببین، Brent باهوش است. ولی یکی از بدترین آدمهایی است که دیدهام در نوشتن هر چیزی. بگذار یک داستان واقعی بگویم که چقدر غیرممکن است: چند ماه پیش، سه ساعت در یک قطعی Sev 1 بودیم و از همهٔ جا تلاش کردیم به Brent escalate نکنیم. ولی بالاخره به جایی رسیدیم که ایدهای نداشتیم و داشتیم اوضاع را بدتر میکردیم. پس Brent را روی مشکل گذاشتیم.»
سر تکان میدهد و خاطره را به یاد میآورد: «نشست جلوی کیبورد و مثل اینکه trance رفته بود. ده دقیقه بعد مشکل حل شد. همه خوشحال و راحت شدند که سامانه برگشت. ولی بعد کسی پرسید: «چطور انجام دادی؟» و قسم میخورم Brent فقط خالی به او نگاه کرد و گفت: «نمیدانم. فقط انجام دادم.»»
Wes به میز میکوبد و میگوید: «و این مشکل Brent است. چطور آن را مستند کنی؟ «چشمات را ببند و trance برو»؟»
Patty میخندد، ظاهراً داستان را به یاد آورده. میگوید: «پیشنهاد نمیکنم Brent عمداً این کار را میکند، ولی میپرسم آیا Brent همهٔ دانشش را نوعی قدرت میبیند. شاید بخشی از او مردد است آن را بدهد. او را در جایی میگذارد که تقریباً غیرقابل جایگزینی است.»
«شاید. شاید نه،» میگویم. «ولی میگویم چه میدانم. هر بار که بگذاریم Brent چیزی را درست کند که هیچکس نمیتواند تکرار کند، Brent کمی باهوشتر میشود و کل سامانه کمی کندتر. باید به این پایان دهیم.
«شاید یک resource pool از engineerهای level 3 برای escalationها بسازیم، ولی Brent را بیرون از آن pool نگه داریم. level 3ها مسئول حل همهٔ حوادث تا بسته شدن باشند و تنها کسانی که میتوانند به Brent دسترسی پیدا کنند — با یک شرط.
«اگر بخواهند با Brent حرف بزنند، اول باید تأیید Wes یا من را بگیرند،» میگویم. «مسئول مستند کردن آنچه یاد گرفتهاند باشند، و Brent هرگز اجازه ندارد روی همان مشکل دوبار کار کند. هر هفته مسائل را مرور میکنم، و اگر بفهمم Brent دو بار روی یک مشکل کار کرده، جهنم در راه است. هم برای level 3ها و هم Brent.»
اضافه میکنم: «بر اساس داستان Wes، نباید حتی بگذاریم Brent به کیبورد دست بزند. مجاز است به مردم بگوید چه تایپ کنند و shoulder-surf کند، ولی تحت هیچ شرایطی اجازه نمیدهیم کاری بکند که بعداً نتوانیم مستند کنیم. روشن است؟»
«عالی است،» Patty میگوید. «در پایان هر حادثه، یک مقالهٔ دیگر در knowledge baseمان برای درست کردن یک مشکل سخت داریم و یک pool رو به رشد از افرادی که میتوانند fix را اجرا کنند.»
Wes کاملاً متقاعد نشده به نظر میرسد، ولی بالاخره میخندد. «من هم دوست دارم. مثل Hannibal Lecter با او رفتار میکنیم — وقتی لازم داشتیم، میگذاریمش در straitjacket، به صندلی چرخدار میبندیم و بیرون میآوریمش.»
میخندم.
Patty اضافه میکند: «برای جلوگیری از escalation دیگر Brent، باید هر keystroke را log کنیم و session terminal را ضبط کنیم. شاید حتی کسی با دوربین ویدیو پشت سرش برود و audit logging را روشن کنیم تا دقیقاً بدانیم چه چیزی عوض کرد.»
دوست دارم، هرچند کمی extreme به نظر میرسد. با این حال، حدس میزنم برای بیرون آمدن از این وضعیت به اقدامات extreme نیاز داریم.
پیشنهاد میدهم: «شاید دسترسی production را از او بگیریم، تا تنها راه انجام کار این باشد که به level 3ها بگوید چه کنند.»
Wes قهقهه میزند. «اگر فوراً این کار را بکنیم ممکن است استعفا دهد.»
«پس چه کسانی داریم که برای این resource pool level 3 در دسترس باشند؟» میپرسم.
تردید میکند. «خب، دو نفری که سال پیش استخدام کردیم برای کمک به Brent. یکی روی ساخت استانداردهای server build کار میکند، ولی میتوانیم موقتاً از آن برداریمش. دو engineer دیگر سالها پیش برای cross-training شناسایی کردیم، ولی هرگز وقت نکردیم ادامه دهیم. پس سه نفر.»
«من procedureهای جدید Brent را تعریف میکنم،» Patty میگوید. «gating همهٔ دسترسی به او از طریق تو و Wes را دوست دارم. ولی چطور مردم مثل آن VP Logistics را از رفتن مستقیم سراغ Brent منصرف کنیم؟»
فوراً جواب میدهم: «نام کسانی که این کار را میکنند جمع میکنیم و به رئیس هر کدام زنگ میزنم بگویم دست بردارند. بعد به Steve میگویم چطور Phoenix را مختل میکنند.»
«باش، امتحان کنیم،» میگوید. «میدانی، رویکرد «چوب» را پوشش دادیم، ولی «هویج» چطور؟ چطور Brent و engineerها را برای پیروی از این فرایند جدید انگیزه دهیم؟»
«شاید آنها را به هر کنفرانس یا آموزشی که بخواهند بفرستیم. وقتی senior engineerها به سطح Brent میرسند، یا آرزوی Brent بودن دارند، میخواهند یاد بگیرند و آنچه انجام دادهاند را به اشتراک بگذارند. در مورد Brent، چطور است یک هفته مرخصی بگیرد، کاملاً آزاد از هر وظیفه escalation؟» Wes پیشنهاد میدهد.
«خدای من،» Wes ادامه میدهد و سر تکان میدهد. «فکر نمیکنم Brent سه سال است حتی یک روز بدون pager مرخصی گرفته باشد. میدانی، وقتی این را پیشنهاد کنیم گریه میکند.»
«انجامش دهید، بچهها،» میگویم و با تصور آن صحنه لبخند میزنم.
قبل از فراموش کردن، اضافه میکنم: «Wes، هر روز timesheet از Brent میخواهم، و هر escalation که Brent انجام میدهد را در ticketing system میخواهم. باید مستند شود تا بعداً تحلیل کنیم. هر کسی از وقت Brent استفاده کند باید برای من توجیه کند. اگر توجیه نشود، به Steve escalate میکنم، و آن شخص و مدیرش باید به Steve توضیح دهند چرا فکر میکنند پروژه یا کارشان آنقدر مهم است.»
«شگفتانگیز است،» Patty میگوید. «در هفتهٔ گذشته بیشتر از پنج سال گذشته فرایند تغییر، حادثه و escalation راه انداختیم!»
«احتمالاً دقیقاً به موقع،» Wes میگوید و راحت به نظر میرسد. «لطفاً به کسی نگو گفتم. آبرو دارم که حفظ کنم.»