معضل سنیوریتی لوکال و مرگ دانش
یه چند وقتی بود که یه سوال خیلی جدی ذهنم رو درگیر کرده بود که اگه «قرار باشه بیشتراز سه سال توی یک شرکت بمونم اولا چه کارها / چه نقشههایی نباید داشته باشم و دوما چه تلههایی ممکنه برام پیش بیان و حواسم باشه گیر اونها نیوفتم» (☹️ You guessed it right, typical insecure mindset right here).
با اندکی اورثینک دراین باره به جمعبندی زیر رسیدم که عملا مفهوم مرکزی اون میشه یه مسالهای به نام سنیور لوکال. وقتی برنامهنویسها برای یه مدت طولانی تو یه شرکت میمونن (مثلا ۵ سال+) به دلیل اینکه روی رویههای فنی شرکت تسلط پیدا میکنن معمولا تبدیل به یه مرجع فنی داخلی میشن که به اصطلاح بهشون میگن «سنیور لوکال»!
منظور اینه که اون آدم از نظر سلسهمراتب شرکت، مدیران، همتیمیها و حتی خودش یه نوع آتوریتی فنی بالادستی داره و در مسائل فنی حرف اول و آخر رو معمولا ایشون میزنه. اما این سنیوریتی تو فضای گلخونهای همون شرکت ایجاد شده و خارج از اونجا ممکنه همچنین معنایی نداشته باشه.
این نوشته دو بخش داره. تو بخش اول میخوام نشونههای این نوع سنیورها رو بر اساس مشاهدات شخصی خودم دستهبندی کنم و در بخش دوم چند راهکار پیشنهاد بدم که خودمون گرفتار این تله نشیم:
نشونههای سنیورهای لوکال
1️⃣ ذهنیت دانش کافی و تعلق خاطر ابزاری
به نظرم اولین و شاید خطرناکترین ذهنیت این دسته برنامهنویسها اینه که تصور میکنن «دانش فعلی اونها برای هندل کردن بیزینسهای فعلی و آینده شرکت کافیه». در نتیجه این نگرش این افراد خودشون رو از یادگیری بینیاز میدونن و به ابزارهایی که میشناسن و باهاشون راحت هستن وفادار میمونن.
معمولا وقتی یه مشکل فنی پیش میاد، بهجای جستجو برای راهحلهای جدید، سعی میکنن همون رویهها و الگوهای قدیمی رو استفاده کنن. به نظرم این افراد ناخودآگاه از «ابزارهای جدید» میترسن چون شاید از نظرشون استفاده از ابزار جدید یعنی تصدیق وجود شکاف در دانش خودشون.
2️⃣ مقاومت در برابر تغییرات فنی
به نظرم سنیورهای محلی به تدریج در برابر تغییرات فنی (که بعضی وقتها ضروری هم هستن) مخالفت میکنن. احتمالا این مقاومت اونها یه جور دفاع ناخودآگاه از سرمایهگذاری ذهنیای هست که در طول این سالها برای انجام رویههاشون انجام دادن. تغییر در این رویهها معادل میشه با بیارزش شدن اون رویهها.
معمولا این مقاومت با استدلالهایی شبیه جملههای زیر همراه میشه:
-
این فریمورک /لایبرری جدید برای کارهای ما زیادی سنگینه
-
ما این مشکل رو با راهکار خودمون میتونیم حل کنیم
-
ریفکتور کردن فلان قسمت ساختار / نظم / یکپارچگی ذهنی همه رو بهم میریزه
3️⃣ ورود به بازی قدرت
به نظرم لحظهای که یادگیری متوقف میشه ملاحظات فنی هم در نردبان ارتقای شغلی ارزشمندی خودش رو از دست میده و برنامهنویس برای پروموت کردن خودش به دنبال راههای جایگزین میگرده. معمولا این جایگزینها همراه میشه با ورود به بازی قدت، سلسلهمراتب و چارتبندیها و مشابه این.
خوب یادمه یه جایی که کار میکردم CTO شرکت بهم میگفت «بیا این بیزینس رو بهت یاد بدم تا سالها اینجا موندگار بشی» کسی که انتظار داشتم همه چالشهای فنی رو بهم نشون و یاد بده تمرکزش این بود به من بیزینس خاص اون شرکت رو یاد بده!
4️⃣ فرمیک شدن دغدغههای فنی و تمرکز بر جلسات غیرفنی
یکی دیگه از نشونههای سنیورهای لوکال اینه که به دلیل ایستایی دانش و اولویت پیدا کردن موقعیتش در چارت سازمانی همه رویههای فنی براشون حالت فرمال پیدا میکنه و در عوض جلسات غیرفنی در اولویت قرار میگیرن. در حقیقت جوهره کار برنامهنویس رو اگه «حل مسئله، ساختن و یادگیری» بدونیم جای خودش رو کمکم میده به پر کردن فرمهای کانفلو، آپدیت تسکهای جیرا، شرکت در جلسات با ذینفعان، نوشتن انواع صورتجلسه و سندهای کسبوکاری.
کاربرنامهنویس فقط همینه: حل مسئله، ساختن و یادگیری
پیشنهادهای پیشگیرانه
1️⃣ اصلاح نگرش
به نظرم هر تغییری از اصلاح نگرش شروع میشه، به قول بودا «همه رنجهای ما ناشی از نگرشهای ماست». منظورم از اصلاح نگرش اینه که «سرمایه اصلی من دانش و تجربه من هست نه موقعیت سازمانی من.»
به عبارت دیگه من تا زمانی marketable یا relatable هستم که با ابزار و ترندهای و پرکتیسهای روز آشنا باشم. موقعیت سازمانی فقط و فقط تو کانتکست محلی همون سازمان دستگیر من میشه نه بیرون از اونجا.
2️⃣ ماکاینترویو و کالیبره شدن با مارکت
ماکاینترویو صرفا برای عوض کردن کار نیست، بیشتر برای اینه که بفهمیم دانشمون هنوز translate میشه یا نه. به نظرم مهمترینش فایدهاش اینه که آیا تجربیاتم از پروژههای فعلی قابل توضیح و دفاع هستن، یا فقط به درد اون شرکت خاص میخورن؟
3️⃣ فعال کردن مکانیزم گیتهاب
یه خطر سنیوریتی لوکال اینه که معیار تواناییهای اون آدم میشه چیزایی که فقط تو اون شرکت براش جواب داده. به نظرم یکی از بهترین راهها برای اینکه از این چاله در بیایم اینه که کامیتمنت داشته باشیم که آخر هفتهها، تعطیلات یا هروقتی که حال داشتیم تو گیتهاب یا پروژههای اوپنسورس کامیت مفید داشته باشیم.
جمعبندی
یادگیری پایان نداره، یک نقطه و مقصد نهایی نیست، یک مسیر در جریان هست.
توقف در مسیر یادگیری در واقع یعنی برگشت به عقب.
یادگیرندهها از تغییر نمیترسند بلکه از ایستادن میترسند.
ارزشمندی برنامهنویسها در یک شرکت در توانایی اونها در حل مسئله، سطح دانش و تجربه اونهاست و نه جایگاه اونها در چارت سازمانی.