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