کار تیمی – یادداشتی از سالار کابلی
که در مورد چیزهایی که بعد از مهاجرت یاد گرفتم نوشته بودم، میخوام باز هم بنویسم در مورد چیزهایی که در طول انجام کارهای جدیدم یاد گرفتم. چیزهایی که قبلا باید یاد میگرفتم ولی متاسفانه هیچوقت نشد.
مهمترین چیزی که بهش رسیدم اینه که فقط خوب یا عالی بودن در انجام یه کاری کافی نیست برای موفق شدن. من مدتهای طولانی فکر میکردم اینکه تمام توان و انرژیم رو برای انجام یه پروژه یا کار میذارم کافیه. ولی بعد از چند ماه کار اینجا متوجه شدم این اصلا کافی نیست و چیزهای خیلی مهمتری، یا به همون اهمیت تاثیر دارن توی پیشرفت در کار.
وقت شناسی
من زمانی که ایران بودم و به صورت فریلنس کار میکردم، هیچوقت اهمیت زیادی برای زمان قایل نبودم. هروقت که در توانم بود کار میکردم و هروقت تموم میشد میخوابیدم. مثلا ممکن بود کل شب رو بیدار باشم و ساعت ۱ از خواب بیدار شم و یا برعکس. و اینکه اگر هم قرار بود پروژهای رو در x روز یا ماه تحویل بدم، خیلی دقیق روی اون زمانبندی پافشاری نمیکردم و معتقد بودم که کیفیت کاری که تحویل میدم خیلی مهمتر از اینه که کار روی سر موقع تحویل بدم. این موضوع شاید بعضی اوقات درست باشه (مثلا وقتی کیفیت کار قراره خیلی پایین بیاد، در اون صورت باید پشبینی زمانبندی بهتر انجام میشد) ولی کیفیت کار به تنهایی قابل قبول نیست و این رو من الان میدونم. کار با کیفیت زمانی اهمیت داره که سر موقع انجام داده بشه وگرنه ارزشش رو بکلی از دست میده.
ماههای اولی که اینجا سر کار میومدم همیشه سعی میکردم ساعت ۹ سر کار باشم (چون نمیخواستم نامنظم به نظر برسم) ولی چون قبل از اون در ایران زندگی میکردم و تقریبا غیر ممکن بود سر یه ساعت خاص یه جا باشی، اینجا هم بعضی روزها از دستم در میرفت و مثلا ۵ دقیقه دیرتر میرسیدم. بعد فهمیدم که تیم ما یه قانون داره که اگر بعد از ساعت ۰۹:۰۰ برسی شرکت باید یه یورو بندازی تو قلک تیم! این قانون بامزه بود تا زمانی که تعداد سکههایی که انداخته بودم تو قلک به ۲۰ تا رسید: این یعنی من خیلی روزها دیر میرسیدم (حتی ۱ دقیقه هم باعث اجرای اون قانون میشد و فرقی نمیکرد ۱ دقیقه یا ۱ ساعت – دیر کردن دیر کردنه) و این باعث ناراحتیم بود. بعضی وقتها که توضیح میدادم اتوبوس اشتباهی رو سوار شدم همکارهام به شوخی (ولی جدی) میگفتن که خب ۱۰ دقیقه زودتر بیدار شو که اگر اشتباهی هم شد بشه جبرانش کرد. اونجا بود که فهمیدم زمان چقدر ارزش و اهمیت داره و سعی کردم بعد از اون همیشه سر موقع برسم. خیلی بارها شده از یک یا دو روز قبل به همتیمیهام اطلاع میدم که قراره فلان روز من ۱۰ دقیقه دیرتر برسم چون فلان کار رو دارم و این روش درستتری هست از «بعدا» اطلاع دادن؛ چون اینطوری بقیه میتونن برنامههای تیم رو با آدم هماهنگ کنن.
موضوع دیگهای که توی فنلاند خیلی به چشم میاد اینه که سیستم حمل و نقل عمومی خیلی دقیق هست. یعنی اگر توی اپ نوشته باشه فلان اتوبوس ساعت ۰۸:۲۳ میاد، معنیش اینه که با درصد خطای خیلی کمی اتوبوس همون موقع میاد و اگر حتی در حال دویدن به سمتش هم باشی خیلی اوقات منتظرت نمیمونه و در حالی که داری میبینیش میره حتی اگر برف و کولاک و یخبندان باشه، و بارها این اتفاق برای من افتاده و این به آدم یاد میده که همیشه زودتر از موعد اومدن اتوبوس توی ایستگاه باشم.
این دو موضوع باعث شدن که الان من آدم خیلی وقتشناستری از قبل باشم. این وقتشناسی بعد از مدتی تبدیل به دیسیپلین میشه و آدم ناخودآگاه همیشه اون رو رعایت میکنه.
عضوی از تیم بودن
همونطور که قبلا گفتم من تقریبا همیشه به تنهایی کار میکردم تا زمانی که وارد این شرکت شدم. توی تیم کار کردن تفاوت زیادی با تنهایی کار کردن داره که اگر بخوام مهمترینهاش رو توضیح بدم اینا هستن:
اعتماد داشتن به تخصص همتیمیها: وقتی آدم تنهایی کار میکنه، مجبوره صفر تا صد یه پروژه رو خودش انجام بده. برای همین تقریبا همه چیز با اون کیفیتی پیش میره که انتظارش رو داره. ولی کار کردن تو یه تیم به این معنیه که آدمای دیگهای قراره بخشهای مختلف پروژه رو انجام بدن و اونها حتما روش کار و کیفیت کارشون مثل خود آدم نیست و کاملا متفاوته خیلی وقتها. مهمترین چیز اینه که به تخصصشون اعتماد داشته باشیم و بدونیم که اونهاهم هرکاری در توانشون هست رو انجام میدن برای تموم شدن پروژه.
زیر سوال نبردن زحمت همتیمیها: وقتی وارد یه تیم میشیم شاید سطح کارها و کیفیت کارهای اون تیم هماهنگ با چیزی نباشه که انتظارش رو داریم. همونطور که تو مورد قبلی گفتم مطمئنا اون افراد هم تلاششون رو برای درست انجام دادن کارها کردن و اگر چیزی مطابق انتظار ما نیست معنیش این نیست که اونها کارشون رو خوب انجام ندادن. خیلی وقتها شرایط پروژه و شرکت و استرس حاکم در کار باعث میشه که پروژه با کیفیت ایدهآل پیش نره. اگر ما بخوایم از سطح کار هم تیمیها جلوی خودشون یا مدیریت به صورت واضح گله کنیم بدون اینکه ازشون دلیل اون مشکل رو بپرسیم، فقط داریم کارهاشون رو بدون دلیل زیر سوال میبریم و چیزی حاصل نمیشه جز اینکه اونا از دست ما و خودشون ناراحت بشن. اگر مشکلی میبینیم اول در موردش سوال کنیم و بعد برای حلش راه حل ارائه بدیم خیلی منطقیتره.
تافته جدا بافته نباشیم: تنهایی کار کردن همیشه حس «خوب بودن» رو به آدم القا میکنه. چون آدم فکر میکنه انقدر خوب هست که میتونه به تنهایی یه پروژه رو انجام بده و بابتش پول بگیره. بعد از یه مدت حتی آدم خودش رو بهتر از «رقیبهاش» هم میدونه در اون صنعت یا بیزینس. مثلا یک طراح وب فریلنس (آزادکار) خیلی وقتها ممکنه فکر کنه از طراحهای وب دیگه کارش بهتره و طبیعی هم هست این طرز فکر. ولی وقتی وارد تیم بشه و به این تفکرش ادامه بده مشکل ساز میشه. آدمای توی یه تیم همه باهم برای به انجام رسوندن یه هدف واحد دارن تلاش میکنن. هیچکس رقیب هیچکس نیست و با اینکه ممکنه بعضیهاشون از بقیه تجربه بیشتر یا کمتری داشته باشن، هیچکس تافته جدا بافته نیست. اینکه آدم فکر کنه من خیلی خوبم پس روش کار من به روش کار بقیه برتری داره خیلی تفکر مسمومی هست از نظر من. همیشه سعی میکنم تفکراتم رو با واقعیت هماهنگ کنم و فکر نکنم من از بقیه بهتر و بالاترم.
دنیای واقعی
کار کردن به تنهایی توی خونه و روی پروژههای شخصی یا آزادکاری تفاوت عمدهای داره با کار توی یه شرکت که محصول و مشتری داره. محصولی که مشتری داره معنیش این هست که اون مشتری بابت محصول پول پرداخت میکنه و اون پول داره اون شرکت رو با همه متعلقاتش (از جمله من و شما) اداره میکنه. شرکتی که پول نداشته باشه دیگه وجودش معنی نداره. این موضوع باعث میشه که «خوشحال نگه داشتن» اون مشتریها تبدیل بشه به پراهمیتترین هدف اون شرکت. حالا بعضی مشتریها بابت کیفیت پول پرداخت میکنند و بعضیهای دیگه بابت «سر موقع» برطرف شدن نیازهاشون.
فرض کنید محصول یه شرکت یک نرمافزار آنلاینه و یکی از مشتریها ضمن کار با اون نرمافزار به مشکل برخورده و به شرکت ما اطلاع داده و خیلی هم شاکیه. فارغ از اینکه کد خود نرمافزار چقدر تمیز و عالی نوشته شده، برای حل مشکل مشتری، ما باید تمام تلاشمون رو بکنیم که در سریعترین زمان ممکن مشکل برطرف بشه. برای اینکار برنامهنویسها باید احیانا کدی رو بنویسن که شاید باب میلشون نباشه ولی مجبورن که بنویسن؛ چرا که اگر اون مشکل اساسی امروز حل نشه ممکن هست اون مشتری از دست بره (این اتفاق بارها افتاده در شرکت فعلی من). هر برنامهنویسی که این کد رو مینویسه با خودش میگه که «در اولین فرصتی که گیرم بیاد کد رو تمیز میکنم بعدا» و توی کد هم هزار تا کامنت Todo میذاره که بعدا روش بهتری پیدا کنه. ولی متاسفانه در دنیای واقعی، بعد از حل مشکل فعلی باید کار متفاوتی انجام بشه و ممکنه تا چند سال بعد کسی فرصت نکنه برای اون Todo های داخل کد روش بهتری پیدا کنه! همین میشه که کم کم کد برنامه پر از کدهای قابل تامل میشه که هرکدوم یه زمانی یه مشکلی رو حل کردن و برای تمیز کردنشون باید وقت و هزینه بسیار صرف کرد.
جدا از اینکه من از این شرایط راضی هستم یا نه، باید درک میکردم که این واقعیت حاکم در شرکتهاست. کدی که در یک شرکت نرمافزاری نوشته میشه تفاوت اساسی داره با کدی که توی خونه و به هدف منتشر کردن در گیتهاب شخصی نوشته میشه. من وقتی توی خونه کد مینویسم تمام وقتم رو صرف این میکنم که کدم رو به بهترین و تمیزترین شکل ممکن بنویسم که یه وقت آبروم نره! ولی توی شرکت دیگه بحث آبرو و غیره فقط بستگی به اون پولی داره که مشتری شرکت پرداخت میکنه.
برای همین من یاد گرفتم که کدی که همکارام توی شرکت مینویسن رو با کدی که توی اینترنت توسط آدمهای معروف به اشتراک گذاشته میشن مقایسه نکنم. کدی که به هدف انتشار در اینترنت و اوپن سورس کردن نوشته میشه خیلی تفاوت داره با کد داخل شرکت. توی شرکت خیلی وقتها بحث «بقا» مطرح هست و گاهی (متاسفانه) کیفیت در درجه اول اهمیت نیست.
منبع:وبلاگ فارسی سالار کابلی