شاید برای مدتی طولانی هست که شما یک برنامه نویس جونیور یا میان رده (مدیور) هستید. احتمالا هم احساس میکنین که لیاقت شما بیشتر از این هاست. همهی ما در بازهای از زمان چنین حسی داشتیم. در چنین شرایطی حس میکنیم دیگه وقتش رسیده تا به اون چیزی که لایقش هستیم برسیم.
پس بذارید در مورد مباحثی صحبت کنیم که شاید کمتر کسی در موردشون با ما صحبت کنه. باورهای اشتباهی که شاید بعضی از ما ها بر اساس اونها داریم تصمیم میگیریم. آیا واقعا سنیور شدن آسونه؟ یک فرد سنیور چه ویژگیهایی باید داشته باشه؟
اما قبل از هرچیزی
شاید کلمهی سنیور برای ما به نوعی دیگه تعریف شده. بهتر هست که یکم بیشتر در مورد این واژه صحبت کنیم:
۱) سنیور به این معنا نیست که شما یک برنامه نویس کامل و بی نقص هستید! شاید هم یک فرد سنیور بهترین برنامه نویسِ تیم نباشه. سنیور بودن یعنی شما مسئولیت بیشتری نسبت به سایر افراد داخل تیم دارید. مدیر فقط با شما صحبت میکنه؛ نه با سایر افراد. از شما در مورد مسائل مختلف توضیح میخواد و سایر بازخوردها رو به شما منتقل میکنه. شاید همین جملهها خوندنش آسون باشه. اما توانایی مدیریت چنین مسائلی به هیچ وجه آسون نیست.
۲) اگر در شرکت فعلی، شما یک برنامه نویس سنیور هستید، به این معنی نیست که به هر شرکت دیگهای برید بازهم یک فرد سنیور میشید. شاید در برخی از شرکتها حتی شما رو به عنوان یک برنامه نویس جونیور قبول کنن! اصلا شُکه نشید. این یک موضوع کاملا طبیعی هست. اون شرکت باید بهتون به اندازه کافی اطمینان کرده باشه تا مسئولیتهای سنگینی به شما واگذار کنه. همچنین ممکن هست چیزهایی که شما در شرکت قبلی به اونها تسلط داشتید در این شرکت کارایی نداشته باشن (برای مثال فرض کنید شما یک برنامهنویس خیلی خوب هستید ولی به صورت حرفهای به داکر (Docker) مسلط نیستید. اما در شرکت جدید داکر یکی از ابزارهای مهم هست و اکثر افراد به داکر مسلط هستن).
نکاتی برای سنیور شدن
- مسئولیت پذیر باشید
مهمترین اصل برای سنیور شدن همینه. شما همیشه باید سعی کنید بیشتر کارهای تیم رو به عهده بگیرید. شاید هم گاهی اوقات در جلسات مختلف در مورد نحوهی انجام پروژهها صحبت بشه و سوالاتی پیش بیاد که چه کسی یک تسک سنگین رو انجام میده؟ دستتون رو بالا ببرید و داوطلب بشید. از همه مهمتر تسکی که قبول کردید رو به موقع انجام بدید.
- همیشه یک قدم اضافهتر بردارید
شما یک تسک دارید. اون رو به خوبی و به موقع انجام میدید. آفرین! اما این باعث نمیشه از دیگران متمایز بشید. سایر برنامه نویسان تیم هم تسکهای خودشون رو به خوبی انجام میدن. به همین دلیل هست که باید سعی کنید یک کار اضافه انجام بدین. کاری کنید که از دیگران متمایز بشید. ممکن هست در حین انجام یک کار ایدهای به ذهنتون برسه که باعث میشه کارایی برنامه افزایش پیدا کنه. پس اینکارو بکنید! اما حواستون باشه که این کارهای اضافی به هیچ وجه نباید باعث تاخیر در انجام تسکهای اصلی شما بشن.
- مشکل گشا باشید
حتما تجربه داشتید که وقتی با همکارانتون صحبت میکنید در مورد دشواری انجام بعضی از مسائل گِله دارن. برای مثال شاید بشنوید که میگن: «خیلی سخت هست که لاگها رو از جاهای مختلف جمع کنیم و اونها رو تحلیل کنیم» یا «در حال حاضر استقرار (deploy) میکروسرویسها کار بسیار سختی هست». همهی ما داخل شرکتهامون با مسائل این چنینی رو به رو شدیم. چه کاری باید بکنیم؟ تو این مورد برای حل مشکل اول میشه از Graylog استفاده کرد و برای حل مشکل دوم بهتره از Kubernetes استفاده کنیم. شاید در تیم شما مسائل دیگهای وجود داشته باشه. اما یادتون باشه همیشه برای هر مشکلی یک راه حلی هست. شاید پیاده سازی بعضی از این راه حل ها ماهها طول بکشه، اما مطمئن باشید ارزشش رو داره.
- همیشه در حال یادگیری باشید
فکر نکنم این مورد نیازی به توضیح اضافه داشته باشه. کاملا واضح هست در حوزهای که ما داریم کار میکنیم همیشه باید بروز باشیم و چیزهای جدید یاد بگیریم.
- خودتون رو بازاریابی کنید
شما در حال انجام یک پروژهی خوب هستید. یا دارید با ابزاری کار میکنید که بسیار عالی هست و کمتر کسی در مورد اون اطلاع داره. اگر در حال انجام چنین کارهایی هستید اما کسی در مورد کاری که شما میکنید مطلع نیست، اینکار برای شما هیچ فایدهای نداره. فقط کافیه یه پیام داخل گروههایی که هستید برای دوستانتون بفرستید یا اونها رو با ارسال ایمیل در جریان کاری که میکنید بذارید. پس بهتره تا با کمک روشهایی افراد مختلفی رو در مورد کاری که میکنید مطلع کنید.
- باحال و خوش اخلاق باشید
سعی کنید فردی باشید که بقیه افراد تیم دوست دارن بعد از کار باهاش شام بخورن. یا آخر هفتهها شما رو به یه گردش یا سفر دعوت کنن و از وجود شما خوشحال بشن. اگه کسی هستید که دیگران از شما خوششون نمیاد، پس شما ارشد خوبی نیستید.
- یک مربی خوب باشید
با انجام موارد بالا شما یک ارشد خوب هستید. اما به این مورد هم باید توجه کنید (به قول معروف last but not least). شما باید به برنامه نویسان جونیور تیم کمک کنید (اونها رو زیر پر و بال خودتون بگیرید). هرچیزی که خودتون بلد هستید رو به اونها هم یاد بدین. شما با انجام این کار به یک سنیور واقعی تبدیل میشید.
نتیجه گیری
مطمئن باشید با تمرین و اجرای این روشها، به مرور زمان شما تبدیل به یک فرد سنیور میشید. پس بهتره این موارد رو کم کم در محیط کارتون (و البته روی خودتون) پیاده سازی کنید.
مطمئنا استفاده از این روشها در هر حوزه و شغلی میتونه شما رو به یک فرد ارشد تبدیل کنه و فقط مختص به حوزهی برنامه نویسی نیست.