« چهره انتخاباتی | صفحه اصلی | "پير برنامه ساز" ، "برنامه نويس پير"! (قسمت دوم- پیر برنامه ساز) »
"پير برنامه ساز" ، "برنامه نويس پير"! (قسمت اول - تعریف مشاغل)
&"January 26, 2008&"
چند وقت پيش در برخي وبلاگ هاي نرم افزاري بحثي بود در اين زمينه که آيا براي برنامه نويسي، شرط سني بايد قائل شد يا خير و آيا اين شغل عمر مشخصي دارد؟ بحث ديگر تفاوت برنامه ساز و برنامه نويس بود که کداميک بهتر هستند؟ هر چند مباحث مطرح شده توسط نويسندگان اين نوشته ها را قبول دارم ، دراين نوشته قصد دارم از نگاه خودم به اين سوالها پاسخ دهم.
پيش از پرداختن به اصل مطلب بگذاريد نگاهي داشته باشيم به مشاغل موجود در مهندسي نرم افزار:
در کتاب Careers in Computers نوشته Lila Stair و Leslie Stair انتشاراتMcGraw-Hill شاید چیزی نزدیک به 150 تا 200 ردیف شغلی مختلف برای مهندس کامپیوتر فهرست شده است اما اگر بخواهیم خیلی خلاصه طبقه بندی کنیم می توانیم ردیف های شغلی زیر را مشخص کنیم:
- اپراتور : به هر نوع شغلی که متضمن کارکردن و نگهداری یک نرم افزار، بانک اطلاعات یا سیستم اطلاق می شود. این ردیف می تواند از مدیریت آن سیستم تا کاربر ساده آن باشد.
- برنامه نویس: به همه مشاغل مرتبط با تولید یک برنامه کامپیوتری، از برنامه نویس و برنامه ساز ارشد تا یک برنامه نویس جز گفته می شود.
-تحلیل گر سیستم: افرادی که وظیفه تجزیه و تحلیل یک سیستم و تبدیل آن به یک مدل شناخت، تهیه فهرست نیازها و طراحی منطقی و فیزیکی سیستم های مبتنی بر کامپیوتر را بر عهده دارند، در این گروه قرار می گیرند.
- مدیر پروژه: وظیفه برنامه ریزی، سازماندهی و نظارت بر روی پروژه های نرم افزاری را بر عهده دارند.
-طراح مساله: به افراد خبره ای که وظیفه کشف و طراحی مسائل جدید و ارتقاء سطح نرم افزار ها را با ایجاد و پیش بینی نیازها و پرسش های جدید بر عهده دارند گفته می شود.
اگر این دسته بندی را قبول داشته باشید می توانیم بحث را ادامه دهیم.
در این تقسیم بندی به نکات زیر دقت داشته باشید:
- مهم نیست در کدام گروه قرار دارید، مهم آن است که در میان بهترین افراد هر گروه باشید.
-این طبقه بندی به معنی رتبه بندی نیست. این شکل نیست که اپراتور پایین تر از برنامه نویس باشد و .... در ایران است که این تلقی غلط وجود دارد که این مشاغل رتبه بندی شده اند. هر کدام از این شغل ها به یک روحیه، علاقه و توان خاصی ارتباط دارد. برای مثال یک تحلیل گر باید الزاما دارای روابط اجتماعی قوی باشد و الزامی ندارد که حتما برنامه نویس خیلی خوبی باشد (اگر چه باید برنامه نویسی را بشناسد تا در طراحی ها، انتزاعی عمل نکند) یا، توانمندی های مدیریتی و برنامه ریزی یک مدیر پروژه غالب تر از توانمندی های نرم افزاری وی است. خلاقیت و خبرگی شرط لازمه یک طراح مساله است.
- در هر شغل می توان پول خوب بدست آورد اگر بتوانید به خوبی مهارت کسب کنید.
- الزامی ندارد همه مهندسین نرم افزار برنامه نویس، تحلیل گر و یا مدیریت پروژه بشوند. شاید از هر 1000 نفر، 900 نفر بتوانند برنامه نویس شوند، 100 نفر بتوانند تحلیل گر بشوند، 10 نفر مدیر پروژه و فقط یکی طراح مساله، بنابر این نباید تلاش کرد در این لیست آخری شد، باید تا هر جا که می توان پیش رفت.
با این مقدمه نسبتا طولانی ، می توان به این مساله به خوبی پی برد که "سن" عامل مهمی در برنامه نویسی نیست. بلکه روحیه و توانمندی آن شخص است که باعث می شود برنامه نویس بشود و برنامه نویس بماند. برخی ها "پیر برنامه ساز" هستند با معادل کردن "پیر" با واژه مرشد و راهبر در ادبیات فارسی که توان برنامه سازی بالایی دارند، شناخت خوبی از مسائل مختلف دارند و به سادگی می توانند ابزار پیاده سازی لازم برای ساخت یک سیستم را شناسایی کنند و بکارگیرند. برخی هم می توانند برنامه نویس پیر باشند. که کار با یک ابزار را خوب می دانند و می توانند مساله و طراحی که به آنها داده می شود را پیاده سازی کنند و تست کنند و سالها در همین شغل می مانند تا بازنشته شوند.
در قسمت دوم این نوشته در مورد آفت های این بحث و بررسی وضعیت درستی این مطلب در ایران خواهم پرداخت ....
همین!