محدودیت پیشرفت شغلی توسعه دهندگان نرم افزار

حامد تکمیل در وبلاگش مطلبی منتشر کرده راجع به عدم تناسب عرضه و تقاضا در بازار کار توسعه نرم‌افزار کشور، کاهش رغبت توسعه دهندگان به رشد و پیشرفت و مقایسه‌ای با شغل پزشکی و شغل دلالی. این مطلب جرقه ای بود برای من برای اینکه باز هم با خودم فکر کنم که سقف پیشرفت شغلی توسعه دهندگان نرم‌افزار چقدر محدود یا نامحدود است. آیا شرایط بازار کار می‌تواند توسعه دهندگان را مجاب کند که تا بازنشستگی همچنان توسعه‌دهنده باقی بمانند یا خیر؟

متاسفانه من فکر می کنم در حوزه توسعه نرم افزار، حداقل در داخل ایران، سقف پیشرفت محدود است. محدودیت در حدی است که نمی‌تواند توسعه دهندگان را تا زمان بازنشستگی در این شغل نگه دارد. حتی خیلی کمتر از سی سال است. چیزی در حد یک دهه است به نظر من. توسعه دهندگانی که کارآفرین می‌شوند یا توسعه دهندگانی که مدیر شرکت می‌شوند دیگر توسعه‌دهنده نیستند. آن‌ها فیلد کاری شان را عوض کرده اند. آن‌ها از توسعه نرم‌افزار به تجارت و مدیریت سویچ کرده اند. کسانی که مدیر پروژه می‌شوند (حالت لب مرزی) هم دیگر توسعه‌دهنده حساب نمی شوند. تعدادی از توسعه‌دهنده های نرم‌افزار در مسیر شغلی شان، خصوصا در شرکت های بزرگ، تبدیل به متخصصین IT می‌شوند. درست است که IT و توسعه نرم‌افزار خیلی به هم نزدیک هستند ولی به هر صورت با هم متفاوت هستند.

توسعه‌دهنده نرم‌افزار یعنی کسانی که برنامه نویس یا Developer هستند، چه Junior و چه Senior. کسانی که برنامه نویس ارشد، Team Leader و با کمی اغماض اسکرام مستر و Technical Manager یک مجموعه صرفاً مبتنی بر توسعه نرم‌افزار هستند را می‌توان توسعه‌دهنده به حساب آورد.

اگر آگهی استخدام های مختلف که در رسانه‌های مختلف منتشر می‌شوند را همراه با موقعیت های شغلی که شفاهاً از دوستانتان می‌شنوید کنار هم بگذارید می‌بینید که عمدتا راجع به استخدام برنامه نویس Junior و Senior در پلتفرم ها و بخش‌های مختلف هستند. یکی توسعه‌دهنده جاوا می‌خواهد اون یکی توسعه‌دهنده دات نت. این شرکت Front-end Developer می‌خواهد آن یکی Back-end Developer. همه آن‌ها با وجود تفاوت‌هایی که دارند در یک چیز مشترک هستند. همه آن‌ها در Seniority Level مشترک هستند. اکثر آن‌ها برنامه نویس هایی با حداکثر 7 سال تجربه لازم دارند. هستند آگهی استخدام هایی تحت عنوان اسکرام مستر، Team Leader و مدیر پروژه و حتی CTO، اما تعدادشان خیلی محدود است. آن تعداد محدود هم معمولاً توسط سهامداران (در شرکت های کوچک) یا افرادی غیر از فارغ التحصیلان مهندسی نرم افزار (در شرکت های بزرگ تر) اشغال شده اند. حتی با یک نگاه بدبینانه می‌توان گفت که نوعی مافیا برای تصدی مشاغل رده بالای توسعه نرم‌افزار وجود دارد.

کلا ساختار شرکت ها طوری است که نیاز به توسعه دهنده خیلی مجرب یا خیلی توانا زیاد نیست. مگر تیم های توسعه نرم‌افزار در شرکت های نرم افزاری چقدر بزرگ هستند؟ مگر عمر متوسط شرکت های توسعه نرم‌افزار چقدر است که بخواهند رشد کنند و نیاز به توانایی‌های فنی آنچنانی پیدا کنند؟

در مطلب حامد تکمیل مقایسه کوچکی هم شده با شغل‌های پزشکی و دلالی. بین یک پزشک که بیست سال سابقه طبابت دارد و پزشکی که تازه از دانشگاه فارغ شده تفاوت های زیادی هست. اما بین دو مهندس نرم افزار که یکی تازه فارغ التحصیل شده و یک مهندس نرم افزار دیگر که بیست سال است در کار توسعه نرم افزار است اونقدر تفاوت سنگینی وجود ندارد. تازه اگر مهندس بیست سال پیش فسیل نشده باشد و عقب تر نیفتاده باشد. ساختار پیشرفت شغلی در پزشکی کاملا مشخص و مدون است. اما در مهندسی نرم افزار این طور نیست. ما پزشک انترن داریم که هنوز فارغ نشده. بعدش پزشک عمومی داریم. بعدش پزشک عمومی داریم که طرحش را گذرانده. بعدش کسی را داریم که رزیدنت است. بعدش دکتر متخصص داریم. بعدش کسی را داریم که در فلان دانشگاه درس می دهد. بعدش کسی را داریم که در فلان موضوع فلوشیپ دارد و الی آخر. سازمان نظام پزشکی داریم. وزرات بهداشت داریم و خیلی چیزای دیگر. آیا مهندسی نرم افزار هم این ساختار جا افتاده و منظم را دارد؟

در شغل دلالی و تجارت (که عنوان دوستانه تری است) هم تفاوت مشابهی وجود دارد. در شغل تجارت و در بازار، شما می‌توانید به اعتبار چندین ساله خود در بازار افتخار کنید و بر اساس همین اعتبار معاملات بزرگ‌تری انجام دهید. بیست سال فعالیت در بازار آنچنان تجربه گران بهایی حساب می‌شود که خیلی‌ها حاضرند که پادویی شما را بکنند که شاید کمی از تجارب شما را یاد بگیرند.

نظر شما چیست؟

Comments

  1. حامد تکمیل

    به نظرم ادامه خوبی بر مقاله بنده هست. اما تلاش می کنم اون قسمت از نوشته خودم که در خصوص پزشکی و دلالی بود رو کمی بیشتر توضیح بدم.

    من از دید انگیزشی به نگاه یک کارجو یا دانشجوی نرم افزار به دنیای کاری پیرامونش پرداختم. وقتی که در جامعه به مقایسه جایگاه های شغلی می پردازه متوجه تفاوت هایی در سطح دستمزد و رفاه اجتماعی میشه. بر همین اساس تصمیم به مقایسه‌ی آینده یک برنامه نویس یا توسعه دهنده با آینده یک دکتر یا دلال یا تاجر می گیره و احتمالاً با نا امیدی مواجه میشه.

    1. Post
      Author
      افشار محبی

      من فکر می کنم در مقایسه با شغل پزشکی، تجارت و بعضی مشاغل دیگر، مقایسه آینده ها با هم کمی نا امید کننده هست واقعا.

      اما نیمه پر لیوان این است که ورود به شغل توسعه نرم افزار راحت تر از تبدیل شدن به یک پزشک حرفه ای یا تاجر موفق است.

  2. ایمان

    به نظرم محدودیت پیشرفت شغلی به نو پا بودن این رشته مخصوصا در ایران برمیگرده و با گسترش اینترنت و بیشتر شدن کسب کارهای موفق ایرانی در آینده شاهد شرایط بهتری خواهیم بود.
    امیدوارم شرایط اقتصادی کشور پایدار تر بشه که همه از ترس آینده نامعلوم اقتصادی دنبال استارت آپ نباشند و شرکت های نرم افزاری چند ده و چند صد نفری زیادی ایجاد بشه.

    1. Post
      Author
      افشار محبی

      ایمان عزیز،

      با شما موافقم. دو مشکل نوپا بودن این صنعت و شرایط اقتصادی ناپایدار کشور از مهم ترین عواملی هستند که مانع پیشرفت و توسعه این صنعت هستند.

      البته من کمی بدبینی هم در این موضوع دارم و به همین خاطر فساد اداری را هم به عنوان یکی از موانع می بینم

  3. ناصر

    سال ۲۰۰۹ – یعنی حدود ۸ سال قبل، یک مطلب تقریبا با همین مضمون توی وبلاگ خودم نوشتم ( البته وبلاگی ه ۶ ساله تعطیلش کردم ) – فکر کردم بد نباشه اون رو هم مطالعه کنی – عمده مواردی که اونجا نوشتم هنوز هم به نظرم درسته – البتهاگر الان بخوام اون مطلب رو بنویسم شاید بعضی موارد رو اصلاح کنم ولی با کلیت اون مواردی که نوشتم هنوز موافقم
    لذا ترجیح میدم صرفا به یک مطلب دیگه لینک بدم

    https://hajloo.wordpress.com/2009/08/27/programming-age/

    1. Post
      Author
      افشار محبی

      پست را همان زمان خودش خوانده بود. دوباره هم خواندم. دیدن دوباره وبلاگت حس نوستالژیکی داشت خصوصا لوگوی گنو!

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *