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

‏  22 دقیقه
۱۲ خرداد ۱۳۹۹

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

فهرست محتوای این مقاله

مهندسی کامپیوتر چیست؟

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

تعریف اولیه‌ی مهندسی کامپیوتر

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

تعریف عمقی مهندسی کامپیوتر

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

آینده‌ی رشته مهندسی کامپیوتر چگونه است؟

خبر خوب این است: این صنعت در حال ترقی است. در واقع، مشاغل مرتبط با کامپیوتر در حال حاضر تنها منبع درآمد جدید در آمریکا هستند. علاوه بر آن، متخصصان خبره‌ی کامپیوتر نیز تقاضای بالایی دارند. بر اساس گزارش دفتر آمار نیروی کار تا سال ۲۰۲۰ بالغ بر ۱.۴ میلیون شغل رایانه‌ای در دسترس است و در حال حاضر تنها ۴۰۰،۰۰۰ نفر از فارغ التحصیلان کامپیوتر با مهارت‌های لازم برای این مشاغل کار می‌کنند.

پیش‌بینی می‌شود که رشد مشاغل مربوط به کامپیوتر تا سال ۲۰۲۶ به ۱۹ درصد برسد. همچنین انتظار می‌رود که مشاغل مربوط به مهندسی سخت ‌افزار کامپیوتر در همین بازه‌ی زمانی ۵ درصد افزایش یابد. اکثر این مشاغل نیازمند مهارت‌ها و دانش بدست‌ آمده از طریق یک مدرک پیشرفته در علوم کامپیوتر یا مهندسی کامپیوتر هستند. لذا اگر در ابتدای کار خود هستید، تصمیم بگیرید که بهتر است زمینه‌های مربوط به علوم کامپیوتر را بیاموزید یا می‌خواهید در حوزه‌ی مهندسی کامپیوتر فعالیت کنید. بعد از این تصمیم گیری باید در مورد شباهت‌ها و تفاوت‌های بین دو رشته، از جمله مهارت‌هایی که شما به آن‌ها نیاز دارید، گزینه‌های شغلی و نحوه‌ی تعیین اینکه کدام یک برای شما مناسب است، بیاموزید. یک استراتژی برای تعیین مسیر درست برای شما این است که اهداف شغلی خود را در نظر بگیرید. به عنوان مثال، اگر شما به دنبال کار به عنوان مدیر سیستم هستید، ممکن است علوم کامپیوتر برای شما مناسب باشد. اگر هدف شما این باشد که در نهایت تبدیل به یک معمار یا توسعه‌ دهنده‌ی نرم ‌افزار شوید، فراگیری مهندسی کامپیوتر شما را برای این کار تجهیز خواهد کرد.

تفاوت رشته مهندسی کامپیوتر با علوم کامپیوتر در چیست؟

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

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

در حالی که رشته مهندسی کامپیوتر شامل دانش طراحی، برنامه ‌نویسی و تست نرم ‌افزار، توانایی ساخت سیستم‌های کامپیوتر شخصی و تعمیر، نگهداری است. یک مهندس کامپیوتر باید درک کاملی از نحوه‌ی کار سخت ‌افزار و معمار کامپیوتر داشته  و انعطاف‌پذیری بالایی برای کار با طیف وسیعی از نرم ‌افزارها داشته باشد. این طیف وسیع در بسیاری از موارد به شدت وابسته به شرکت و یا صنعت است.

computer engineering 01

البته تعاریف بالا تفاوت بین این دو حوزه در کشور ما را بیان می‌کند. در سایر کشورها ممکن است برخی وظایف برای این دو متفاوت باشد که توصیه می‌شود در صورت تحصیل یا اشتغال در خارج از کشور، حتما شرح دقیق وظایف را مرور کنید.

چه کسانی می‌توانند وارد رشته مهندسی کامپیوتر شوند؟

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

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

به‌ دلیل ارتباط تنگاتنگ کامپیوتر و زبان انگلیسی، لازم است تا فرد حتما در حد متوسط رو به بالا با این زبان آشنا باشد. اگر هنوز مطمئن نیستید که برای ورود به این رشته آماده هستید یا خیر، مقاله‌ی '11 دلیل برای برنامه نویس نشدن ! ' را مطالعه کنید.

برای رشته مهندسی کامپیوتر چه دروس و پیش‌نیازهایی لازم است؟

یکی از بزرگترین و مهم‌ترین اشتباهات افراد این است که تصور می‌کنند مهندس کامپیوتر باید حتما در گذشته برنامه نویسی کرده باشد تا بتواند در این رشته تحصیل یا شروع به کار کند. درحالی طبق تعاریفی که در بخش قبل کردیم، توانایی درک و حل مساله مهمترین ویژگی‌ یک مهندس کامپیوتر است، لذا دروسی مانند ریاضی و به‌خصوص ریاضیات گسسته که در تقویت این توانایی‌ها موثر هستند، از پیش‌نیازهای مهم به شمار می‌روند. این دروس به قدری مهم هستند که برای تاکید بیشتر در ترم اول و دوم دانشگاه و قبل از شروع سایر مهارت‌ها آموزش داده می‌شوند.

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

رشته مهندسی کامپیوتر

برای آشنایی بیشتر قبل از شروع مهندسی کامپیوتر و برنامه ‌نویسی، مقاله‌ی پیش‌نیازهای یادگیری برنامه‌ نویسی را مطالعه کنید.

آیا نیاز به تحصیلات آکادمیک در این رشته داریم؟

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

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

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

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

دانشگاه‌های معتبر رشته مهندسی کامپیوتر کدام هستند؟

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

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

حال این سوال مطرح است که رتبه‌بندی دانشگاه‌ها به چه صورت است. در داخل کشور دانشگاه‌های دولتی رتبه‌ی کمتری نسبت به سایرین دارند و در میان دولتی‌ها دانشگاه‌های برتر رشته عبارتند از:

دانشگاه‌های: صنعتی شریف، تهران، امیرکبیر(پلی تکنیک سابق)، شهید بهشتی، علم و صنعت، خواجه‌نصیر، الزهرا(دخترانه)، تربیت مدرس، علامه طباطبایی، صنعتی اصفهان، فردوسی مشهد

در میان دانشگاه‌های خارج از کشور، لیست برترها عبارت است از:

دانشگاه‌های:  ام آی تی (MIT) – استنفورد - کارنگی ملون - برکلی (UCB) در آمریکا، آکسفورد - کمبریج در انگلستان، هاوارد در آمریکا، ای پی اف ال (EPFL) و زوریخ در سوییس، تورنتو در کانادا

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

گرایش‌های رشته مهندسی کامپیوتر چیست؟

گرایش‌های مهندسی کامپیوتر عبارتند از: مهندسی سخت‌ افزار، مهندسی نرم‌ افزار و مهندسی فناوری اطلاعات (IT). این سه گرایش گرچه دارای مفاهیم بنیانی مشترکی هستند اما وجه تفاوت‌شان در این است که هرکدام بر یکی از زمینه‌های کامپیوتر بیشتر تمرکز دارند:

  • در مهندسی سخت‌ افزار فرد مهارت خود را بر روی سیستم‌های کامپیوتری و اجزا، طراحی ریزپردازنده‌ها، بوردهای مدار، روترها و دیگر وسایل تعبیه‌شده، متمرکز می‌کند.
  • در مهندسی نرم‌ افزار فرد تمرکز اصلی را بر تولید یک برنامه‌ی نرم ‌افزاری برای ‌لایه‌های بالاتر کامپیوتر گذاشته و یا سعی در عیب‌یابی یک برنامه‌ی نرم‌ افزاری و رفع باگ دارد. برنامه‌هایی که بر روی کامپیوترها، دستگاه‌های همراه و سایر سخت ‌افزارهای هوشمند اجرا می‌شوند.
  • مهندسی فناوری اطلاعات یک رشته‌ی میان رشته‌ای است و از تلفیق زمینه‌هایی مثل مدیریت، مهندسی صنایع، مهندسی الکترونیک و مهندسی کامپیوتر (به‌خصوص نرم‌ افزار) تشکیل شده است. فرد با هدف کسب دانش در زمینه‌ی مطالعه، طراحی، توسعه، پیاده‌سازی، پشتیبانی یا مدیریت سیستم‌های اطلاعاتی مبتنی بر رایانه به خصوص برنامه‌های نرم ‌افزاری و سخت ‌افزار رایانه فعالیت می‌کند. این رشته به تولید و پردازش و نگهداری و توزیع اطلاعات در مکان‌ها و سازمان‌های بزرگ می‌پردازد.
  • computer engineering 03

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

دروس گرایش رشته‌ی مهندسی کامپیوتر چیست؟

این رشته شامل دروس پایه، دروس مشترک یا اصلی، دروس تخصصی، دروس عملی و دروس اختیاری است:

دروس پایه شامل ریاضیات پایه، آمار و احتمال، ریاضیات گسسته، معادلات دیفرانسیل و زبان تخصصی است.

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

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

دروس تخصصی برای هر گرایش تا حدی متفاوت و مربوط به آن گرایش است. برای نمونه:

  • گرایش نرم ‌افزار شامل: کامپایلر، تحلیل و طراحی سیستم‌ها، پایگاه داده ها، طراحی زبان‌های برنامه سازی، مهندسی نرم ‌افزار، مهندسی اینترنت
  • گرایش سخت ‌افزار شامل: کامپایلر، سیستم‌های کنترل خطی، سیگنال‌ها و سیستم ها، الکترونیک دیجیتال، انتقال داده ها، طراحی سیستم‌های VLSI
  • گرایش فناوری اطلاعات شامل: مبانی فناوری اطلاعات، مهندسی فناوری اطلاعات، تجارت الکترونیکی، مدیریت و کنترل پروژه‌های IT، برنامه ریزی استراتژیک IT، آموزش الکترونیکی، محیط‌های چندرسانه ای

در این میان دروسی مانند شبیه‌سازی کامپیوتری، گرافیک، سیستم‌های مدیریت اطلاعاتی، تست نرم ‌افزار و ... اختیاری هستند و 4 تا 6 واحد هم برای کارآموزی و پروژه‌ی پایانی در نظر گرفته می‌شود.

ادامه‌ی تحصیل در رشته مهندسی کامپیوتر فایده‌ای دارد؟

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

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

گرایش‌های ارشد رشته مهندسی کامپیوتر چیست؟

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

  • گرایش هوش مصنوعی و رباتیکز = کد رشته (یا ضریب) دوم
  • گرایش نرم افزار = کد رشته‌ی سوم
  • گرایش شبکه‌های کامپیوتری‌ = کد رشته‌ی سوم
  • گرایش معماری سیستم‌های کامپیوتری = کد رشته‌ی اول
  • رایانش امن (امنیت) = کد رشته‌ی سوم

البته گرایش‌های دیگری همانند الگوریتم‌ها و محاسبات، طراحی شبیه‌ساز هوشمند، تولید بازی‌های رایانه‌ای و قرآن کاوی رایانشی (که همان داده‌کاوی و پردازش متن در حوزه‌ی علوم قرآنی است) نیز وجود دارند اما دانشگاه‌های کمی آن‌ها را ارائه می‌دهند. در ادامه مروری کوتاه بر پنج گرایش مرسوم خواهیم داشت:

گرایش هوش مصنوعی و رباتیکز

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

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

computer engineering 06

گرایش نرم افزار

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

دانشجویان فارغ‌التحصیل این گرایش می‌توانند در مشاغل طراحی سیستم‌های ذخیرش اطلاعات، تحلیل و طراحی وب سایت‌های سفارشی و... فعالیت داشته باشند.

گرایش شبکه‌های کامپیوتری‌

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

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

گرایش معماری سیستم‌های کامپیوتری

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

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

رایانش امن (امنیت)

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

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

بازار کار رشته مهندسی کامپیوتر چگونه است؟

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

  • برنامه ‌نویسی کامپیوتر (هر زبان برنامه ‌نویسی)
  • تحلیل‌گر و طراح نرم ‌افزار
  • کارشناس پایگاه داده
  • توسعه ‌دهنده برنامه برای دستگاه‌های مختلف
  • مدیر سایت
  • طراح و توسعه ‌دهنده وب
  • کارشناس شبکه
  • متخصص امنیت اطلاعات
  • تحلیل‌گر سیستم‌های کامپیوتری
  • مدیر شبکه

دامنه‌ی حقوق هم برای علوم کامپیوتر و هم برای مهندسی کامپیوتر بسیار جذاب است. رشته‌های علوم کامپیوتر می‌توانند ۴۰ درصد بیشتر از رشته‌های علوم دانشگاهی و همه‌ی مشاغل علوم، فناوری، مهندسی و ریاضیات (رشته‌های پایه) و ۱۲ تا ۳۰ درصد بیشتر از مشاغل غیر پایه در تمام سطوح تحصیلی پول ساز باشند. به طور متوسط، مشاغل علوم کامپیوتر می‌توانند ۱۱۸،۳۷۰ دلار در هر سال درآمد داشته باشند. همچنین مشاغل مهندسی کامپیوتر می‌توانند ۱۱۴،۶۰۰ دلار در هر سال تولید کنند. در ایران اما تقاضای کار بیشتر با عنوان برنامه ‌نویس یا توسعه ‌دهنده مطرح می‌شود و بازه‌ی حقوق از یک و نیم میلیون تومان تا بالای ده میلیون تومان است (بسته به وظایف کاری)

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

دیگر رشته‌هایی که با ترکیب علوم کامپیوتر و مهندسی کامپیوتر ایجاد شده‌اند عبارتند از: هوش مصنوعی (AI) و واقعیت مجازی (VR) و واقعیت افزوده (AR). بازار هوش مصنوعی یک بازار ۳.۹ میلیارد دلاری در آینده است و به علوم کامپیوتر برای طراحی الگوریتم‌های هوشمند نیاز دارد. مهندسی کامپیوتر نیز برای برنامه نویسی و مهندسی سخت ‌افزار برای ایجاد دستگاه‌های هوشمند مورد نیاز است. پیش‌بینی می‌شود که درآمد صنعت VR / AR به میزان ۹.۹ میلیارد دلار تا سال ۲۰۲۲ باشد. در اثبات این جمله این نکته قابل تامل است که در سال گذشته شاهد افزایش ۹۳ درصدی تقاضای شغلی برای AR و VR بوده‌ایم. بسیاری تصور می‌کنند که واقعیت مجازی فقط یک سیستم برای تجربه‌ی بازی است در حالی که VR علاوه بر بازی، در معماری، ارتش و دفاع و آموزش غوغا به پا کرده ‌است. مدرک در زمینه‌ی علوم کامپیوتر یا مهندسی کامپیوتر برای هر کسی که بخواهد وارد این صنعت شود ارزشمند خواهد بود.

در شکل زیر برخی از مشاغل پردرآمد این رشته نمایش داده شده است:

computer engineering 04

آیا فعالیت‌های تکمیلی داریم؟

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

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

گزینه‌های اپلای یا کار در خارج از کشور چیست؟

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

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

تصورات اشتباه از مهندسی کامپیوتر را اصلاح کنیم

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

  • اشتباه 1: مهندسی کامپیوتر یک رشته‌ی تجربی است و نیاز به تحصیل آکادمیک ندارد.
  • اشتباه 2: مهندسی کامپیوتر همان برنامه ‌نویسی است: برای رفع این اشتباه باید به این صورت نگریست که مهندسی کامپیوتر شامل برنامه ‌نویسی است.
  • اشتباه 3: مهندسی کامپیوتر و علوم کامپیوتر تنها در اصطلاح فرق دارند.
  • اشتباه 4: برای شروع مهندسی کامپیوتر باید پیش‌زمینه‌ی برنامه ‌نویسی داشته باشیم.
  • اشتباه 5: تحصیلات تکمیلی در حوزه‌ی مهندسی کامپیوتر تنها اتلاف وقت است.
  • اشتباه 6: افزایش نیروی آماده‌ی کار برای مشاغل مهندسی کامپیوتر موجب شده کار گیر نیاید.
  • اشتباه 7: قرار است در شروع کار میلیونر شوم. این تصور بسیار غلط است. درست است که حقوق مشاغل مهندسی کامپیوتر نسبت به سایر زمینه‌ها بیشتر و سرعت رشد نیز بالاتر است، اما هنگام شروع کار بهتر است فرد در پی کسب تجربه باشد و کمتر به مسایل مالی فکر کند.
  • اشتباه 8: در ایران جای کار برای مشاغل مهندسی کامپیوتر وجود ندارد.
  • اشتباه 9: برای همکاری با افراد در خارج از کشور حتما باید مهاجرت کرد.
  • اشتباه 10: مهندسی کامپیوتر محدود به چند دوره است و تمام می‌شود: برای رفع این اشتباه باید توجه داشت که همواره باید در این زمینه بروز بود. چیزی به اسم بهترین زبان برنامه ‌نویسی وجود ندارد.

جمع‌بندی:

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

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

برای مطالعه‌ی بیشتر می‌توانید به مقالات زیر مراجعه نمایید:

چه امتیازی به این مقاله می دید؟
نویسنده نازنین کریمی مقدم
رویاهاتون رو دنبال کنید ... :)
ارسال دیدگاه
خوشحال میشیم دیدگاه و یا تجربیات خودتون رو با ما در میون بذارید :

 

نظرات کاربران

satar

سلام
تفاوت رشته های نرم افزاری کامپیوتر چیست ؟ مثلا در آزمون استخدامی چند کد رشته زدن
مهندسی کامپیوتر گرایش نرم افزار
مهندسی کامپیوتر نرم افزار
مهندسی نرم افزار کامپیوتر
مهندسی کامپیوتر گرایش سیستم های نرم افزاری
هر کدام با یک کد رشته نوشته شده و در عنوان رشته من نوشته مهندسی نرم افزار کامپیوتر رشته من کدام یک از اینها هست

نازنین کریمی مقدم

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

محمد حسین

بسیار عالی و مفید بود.

علی

سلام،
آیا میشه از رشته تجربی و با کنکور وارد رشته مهندسی نرم افزار شد؟
من علاقه بی حدی به دنیای برنامه نویسی دارم…

نازنین کریمی مقدم

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

سهیل

اتفاقا به نظر من اصلا نیازی به مدرک دانشگاهی نداره رشته ی کامپیوتر. توی پیج اینستای سون لرن هم یک پست راجب همین موضوع گذاشتن که اکثرا گفتن نیازی به مدرک دانشگاهی نیست. خیلی از افراد موفق یا مدرک دانشگاهی ندارن یا هم اگه دارند مرتبط نیست. ایلان ماسک که یه فرد بسیار موفق توی فناوری هست میگه دانشگاه رفتن رو با یاد گرفتن اشتباه نکنیم من به دانشگاه نرفتم ولی اونایی که رفتن برای من کار میکنن. توی اگهی استخدامش که سال 2020 هست میگه نیازی به تحصیلات دانشگاهی نیست و حتی مدرک دیپلم هم نمیحواد :|||

نازنین کریمی مقدم

این بحث خیلی متعارفی در این حوزه هست، در خود دانشگاه هم دانشجویان زیادی معتقد هستند که تحصیلات آکادمیک برای این رشته نیاز نیست!
اما باید توجه داشته باشید که نکته‌ای که خیلی مهم هست و ما در این مقاله چندین بار بهش اشاره کردیم، بحث سرعت، نقشه‌ی راه درست و وجود یک راهنمای قوی در این حوزه هست. شما اگر این سه مورد رو رعایت کنید و نمونه کار قوی داشته باشید، برای کار در این حوزه بدون تحصیلات آکادمیک به مشکل نخواهید خورد.
نکته‌ی دیگری که هست، برای برنامه نویس شدن شاید واقعا با این منابع غنی موجود در اینترنت، نیاز به تحصیلات نباشه، اما برای “مهندس” کامپیوتر شدن تحصیلات نیاز هست.
و برای نکته‌ی آخر، هرچند که خیلی خوبه که طبق سخنان بزرگانی مثل بیل گیتس، استیو جابز و ایلان ماسک و… پیش بریم، اما هیچوقت نباید فراموش کنیم که شرایط کار و تحصیل در آنجا خیلی متفاوت‌ با اینجاست 🙂

موسی زاده

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

نازنین کریمی مقدم

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

پرهام قصابی‌اردجی

خیلی عالی و مفید

نازنین کریمی مقدم

خوشحالیم که این مقاله براتون مفید بوده.

لقمان

سلام کاش گرایش های ارشد این رشته هم مینوشتید

همچنین عین این مقاله را برای it

نازنین کریمی مقدم

سلام. گرایشهای ارشد مهندسی کامپیوتر رو در همین مقاله و در زیر بخش “گرایش‌های ارشد رشته مهندسی کامپیوتر چیست؟” مفصل توضیح داده‌ایم.
معرفی رشته‌ی IT انشاالله در لیست مقالات آینده قرار می‌گیرد. سپاس از فیدبکتون 🙂

محمد رضا اسماعیل زاده

Very nice 👌👍

نازنین کریمی مقدم

👍🙏🌷

Behrouz Alborzi

واقعا مقاله جامعی بودش مخصوصا انتخاب یک roadmap خوب داشتن

نازنین کریمی مقدم

سلام. ممنون که با ما همراه هستید.