توسعه دهنده ارشد (Senior Developer) کیست؟
با نگاهی به صفحات و وبسایتهای مشاغل و کاریابی، مطالب و پروفایلهای زیادی رو با عنوان شغلی «توسعه دهنده ارشد» خواهید دید. اما دقیقاً چه چیزی باعث میشه تا ما عنوان ارشد رو به یک کارمند یا یک متخصص بدیم؟ معمولاً کسی که این عبارت رو در عنوان شغلی خودش داشته باشه، نشون میده که برای مدت مشخصی در حوزه کاری خودش مشغول بوده یا اینکه تجربه کاری معینی توی اون زمینه داره. بنابراین شاید کمی باعث تعجب باشه که طی تحقیقی در سال 2016، حدود 30% از توسعهدهندگانی که مورد بررسی قرار گرفتن، بهعنوان «سنیور دولوپر» شناخته میشدن، درحالیکه سن اونا بین 20 تا 30 سال بود.
ارشد بودن، بیشتر مربوط به تخصص داشتن در یک موضوع و دامنه مسئولیت میشه و درواقع فقط منحصر به مدت سابقه کاری و تعداد سالهایی نیست که یک نفر تجربه کاری کسب میکنه.
با تحقیقات بیشتر، مشخص شد که این موضوع بین مدیران جذب و استخدام فنی و توسعهدهندگان، همواره مورد بحث بوده (مثل سوالی که در سایت StackExchange با عنوان «چه زمانی میتوانیم خود را توسعه دهنده ارشد بنامیم؟» مطرح شده است را مطالعه کنید.) و بعضی از شرکتها (مثل Stack Overflow) اعتقادی به استفاده از این عنوان برای تیم مهندسی خودشون ندارن و درواقع تعریف دیگهای برای «توسعه دهنده ارشد» بودن قائل هستن.
سنیور دولوپر برنامه نویس ارشد کیست؟
کسی که چند سال مشخص (مثلاً n سال)، تجربه برنامهنویسی داشته باشد
اغلب پاسخهایی که در بین مصاحبهشوندهها به یک ویژگی مشترک اشاره میکردن، این بود که یک توسعه دهنده ارشد باید حداقل n سال تجربه کاری داشته باشه. n درواقع میتونه هر عددی باشه، اما بیشتر توسعهدهندگان و مدیران جذب و استخدامی که با اونها صحبت شده بود، توافق داشتن که عدد 10 برای این منظور، عدد مناسبی هست.
البته باید توجه داشت که اساس این تصمیم نباید فقط مبتنی بر سالهای تجربه کاری یک فرد در نظر گرفته بشه. درواقع باید کیفیت اون تجربه هم مدنظر قرار بگیره. باید دید که اون ها طی دهه گذشته چی یادگرفتن، با چه چالشهایی مواجهشدن و چطور اون ها رو برطرف کردن.
کسی که مهارت های رهبری و هدایت یک تیم را داشته باشد
اغلب اوقات، مهارت رهبری و هدایت یک تیم هم جزء ویژگیهای توسعهدهندگان ارشد محسوب میشه. درواقع این افراد بهعنوان رهبر، درعینحالی که همکار توسعهدهندگان دیگه هستن، بهطور مداوم راهنماییهای لازم رو در حین کار به اون ها میدن.
یکی از مدیران فنی باتجربه شرکت تاسیت (Tasytt)، معیار جالبی رو مدنظر قرار داده و گفته: «برای من، یک سنیور دولوپر كسیه که توی سابقه کاری خودش، پشت سر هم موفقیت کسب کرده باشه و در درک نیازمندیهای پروژه و تحویل اون ها هیچ مشکلی نداشته باشه. بهاینترتیب، این فرد بهمرور توانایی مدیریت و پذیرش مسئولیت کارها و همینطور مهارتهای رهبری خودش رو نشون خواهد داد».
کسی که میتواند چرخه عمر توسعه یک نرم افزار را بهطور کامل تحت کنترل داشته باشد
توسعهدهندگان ارشد باید توانایی مدیریت چرخه عمر توسعه یک نرمافزار رو از ابتدا تا انتها داشته باشن. به نظر یکی از توسعهدهندگان شرکت Stack Overflow، «توسعهدهندگان ارشد باید بتونن بدون اینکه وارد جزئیات ریز کار در سطح فنی بشن، سوار کار باشن و پروژهها رو هدایت کنن».
نایبرئیس ارشد بخش مهندسی Events.com، هم این نظر رو تأیید میکنه: «توسعه دهنده ارشد، فرد باتجربهای است که توانایی اجرای پروژههای بزرگ را از ابتدا تا انتها بهطور کامل داشته باشد».
کسی که میتواند حامی و پشتیبان توسعه دهندگان تازه کار باشد
اغلب اوقات، سنیور دولوپرها پیشازاین یک توسعه دهنده تازهکار بودن که بهمرور ارتقاء پیدا کردن و وظایف مدیریتی یا مربیگری بیشتری رو برای یک تیم به عهده گرفتن. مشاور عالی شرکت Itas، برای توصیف ویژگی توسعه دهنده ارشد گفته: «توسعه دهنده ارشد کسیه که سالها تجربه مربیگری و پشتیبانی از توسعهدهندگان تازهکار داره».
کسی که لزوم پویایی تیم را درک کرده و برای آن ارزش قائل است
نایبرئیس بخش فنی Duffy گفته: «برای من یک سنیور دولوپر کسیه که نهتنها ازنظر فنی تجربه کافی داره، بلکه توانایی انتقال تجربه به بقیه اعضاء تیم رو هم داره. درواقع یک توسعه دهنده ارشد، کسیه که لزوم پویایی تیم رو درک میکنه و تمام قواعد موردنیاز برای تحویل یک نرمافزار بدون نقص رو رعایت میکنه. من با توسعهدهندگان متعددی کارکردم که معتقدند تکنولوژی مهمتر از هر چیزه و سایر اعضاء تیم (QA، Design UX، PM و غیره) در رتبه بعدی قرار دارن. یک توسعه دهنده ارشد که میتونه با یک تیم کار کنه و از تمام مهارتهای اعضاء تیم استفاده میکنه، معمولاً پروژههای متعددی رو انجام داده و یاد گرفته که تمام کارها رو نمیشه بهتنهایی انجام داد».
درصورتیکه تمایل دارین بیشتر در مورد «نقش یک توسعه دهنده ارشد» و « چگونگی تقسیم تیم توسعه دهنده روزنامه بریتانیایی گاردین» بدونین روی لینکها کلیک کنید.
از نظر شما یک توسعه دهنده ارشد کیه و چه ویژگیهایی داره؟
مقاله پیشنهادی: مهمترین مهارتهای فریلنسری که درآمد شما را افزایش میدهد
3 دیدگاه برای “توسعه دهنده ارشد (Senior Developer) کیست؟”
به نظر من یک برنامه نویس ارشد باید تمام این ویژگی ها را در خودش پرورش داده باشه.
حالا میزان این ویژگی ها در افراد مختلف متفاوته و بنابراین سطوح افراد رو تعیین میکنه.
درک پروسه یک پروژه و قابلیت برقراری ارتباط با بخش های مختلف اجرای پروژه از جمله کارفرما نیازمند تجربیات و دانش در زمینه های مختلف هست.
اما نیازمند دانش تخصصی در تمام موارد نیست. من خودم همیشه هدفم این بوده که یک مدیر پروژه بشم و برای اون هم سه رشته تحصیلی مختلف رو تجربه کردم و سعی کردم در دنیای برنامه نویسی نیز از بخش های مختلف اطلاعاتی کلی کسب کرده و چالش های پیش روی آنها را مطالعه کرده تا در زمان نیاز بتوانم بهتر با متخصص آن حوزه ارتباط برقرار کنم.
در کل به نظرم همه ی ویژگی های ذکر شده در مقاله فوق نیاز هست.
سلام
من احتیاج به راهنمایی
یک برنامه نویس دارم
مدیر بازاریابی استارت اپ هستم
۰۹۱۲۰۱۹۷۳۷۵