مهندس برمجيات بتعليم رسمي أم فنّي برمجة بمهارة عالية؟ ما هي المشكلة وما هو الخيار الأفضل؟

0

هناك الكثير من الاستثمارات في هندسة البرمجيات في الوقت الحالي بسبب الاعتماد المتزايد على تكنولوجيا الهواتف الذكية والحواسيب المحمولة، وظهور الشركات الناشئة المدعومة برأس المال الاستثماري، والتعقيد المتزايد للتكنولوجيا، والصناعات الناشئة. ويبدو أن الطلب على مهندسي البرمجيات والمبرمجين المهرة والمؤهلين ليس له نهاية، في بداية عصر الحواسيب كان أغلب العاملين في مجال الحواسيب هم مهندسين أو علماء رياضيات متخصصين في مجال البرمجة حيث كانت علوم الكمبيوتر جزءًا من تلك العلوم، وساد حينها لقب عالم حاسوب Computer Scientist أو مهندس برمجيات Software Engineer على المطلوبين للعمل في مجال الحواسيب.

كان الحاسوب في تلك الأيام عبارة عن جهاز ضخم ومكلف جدًا ولم يكن بالإمكان لأي شخص اقتناؤه وكان مقتصرًا على الشركات والمؤسسات الكبرى لكن مع بداية تطور الحواسيب والإنترنت “الفكرة التي كانت تخيف الناس سابقًا” وزيادة الطلب على شركات الحواسيب والبرمجة والعاملين فيها، فقد بدأ سقوط مصطلح “مهندس البرمجيات” ، وصعود مصطلح “مبرمج أو مطوّر”.

نبذة التاريخية

old computer

إذا عدنا إلى بدايات علوم الكمبيوتر، لم يكن هنالك شيء اسمه تخصص علوم الكمبيوتر ولم يكن هناك قسم لعلوم الكمبيوتر في أي كلية أو جامعة، علوم الكمبيوتر كتخصص كان فرعًا من الرياضيات أو الهندسة، أعلنت جامعة بوردو عن أول قسم لعلوم الكمبيوتر في عام 1962، وبقيت علوم الكمبيوتر مجالًا فرعيًا للرياضيات أو الهندسة العامة خلال فترة الثمانينيات من القرن العشرين.

اقرأ أيضًا: مواقع قيّمة لتعلّم البرمجة بشكل مجانيّ

من هم روّاد الحواسيب الأوائل؟

مارغريت هاملتون

أول المبرمجين كانوا علماء الرياضيات لم يطلق عليهم عادة اسم مبرمجين كانوا محللين أو مهندسين أو علماء رياضيات وأغلب المبرمجين الأوائل كانوا من النساء بمرور الوقت وبحلول أواخر الستينيات شهد هذا المجال نموًا حقيقيًا وأصبح الأشخاص المشاركين في برمجة الحواسيب يُعرفون باسم مهندسي البرمجيات كان هؤلاء أشخاصًا متعلمين تعليمًا عاليًا، وعادةً ما يحملون شهادات متقدمة في الرياضيات واستمر ذلك لبعض الوقت، بحلول ثمانينيات القرن العشرين بدأ التأسيس لأقسام ودرجات علوم الكمبيوتر في الكليات والجامعات ويعتبر البعض هذه الفترة العصر الذهبي لعلوم الكمبيوتر، وخلال هذه الفترة رأينا ظهور لقب مهندس البرمجيات الرسمي والتقليدي، لقد كان لقبًا مرغوبًا ومحترمًا ولم ينله إلا الحاصلين على شهادات جامعية رسمية في الرياضيات وعلوم الكمبيوتر أو الهندسة الكهربائية. واستمر هذا الأمر أيضًا لبعض الوقت.

اقرأ أيضًا: أفضل لغات البرمجة التي يمكنك البدء في تعلمها

مع نهاية التسعينيات بدأنا نرى بدايات من نسميهم اليوم “المبرمجين” و “المطورين”، كان هؤلاء أشخاصًا غير حاصلين على شهادات جامعية رسمية، بل كانوا بدلًا من ذلك يحملون شهادات معتمدة من مراكز تدريبية وفي بعض الأحيان مؤسسات رسمية  أو كانوا ببساطة يتعلمون من تلقاء أنفسهم عبر الإنترنت، وبدأت هذه المجموعة الجديدة في مجال هندسة البرمجيات وبشكل بطيء بالدخول إلى ساحة العمل بألقاب جديدة مثل “مبرمج” أو “مطور” بدلًا من “مهندس” لقد رأينا أيضًا في تلك الفترة قفزة نوعية في المجالات الفنية المتعلقة بالكمبيوتر مثل متخصصي الشبكات ومسؤولي الأنظمة المعلوماتية إضافة إلى ظهور الكثير من الأقسام الجديدة التي لم يكن لها وجود مسبقًا.

وحتى أوائل عام 2000 انعدم الطلب تقريبًا على وظيفة هندسة البرمجيات حيث لم يكن لدى المتقدمين درجة علمية كافية مدتها أربع سنوات للتقدّم للوظيفة، وحصل تقدم سريع حتى عام 2010 وأصبحت نصف طلبات التوظيف من أشخاص ليس لديهم شهادة رسمية، أما الآن أصبح هنالك العديد من الطلاب الذين ينقطعون عن الدراسة بعد فصل أو فصلين لأنهم حصلوا على وظيفة مبرمج في مجالٍ ما.

ما الذي حدث؟

programmer

لقد أصبح لقب “مهندس البرمجيات” إما غير صالح أو محجوز لأدوار تقليدية وكبيرة في شركات التكنولوجيا الكبرى، وسبب ذلك أن المعايير قد انخفضت ببساطة فمن الواضح أن الطلب على أي شخص يمكنه البرمجة “حتى في حال انعدام الخبرة” قد ارتفع، وكما نعلم جميعًا فإن قلة قليلة من الناس مؤهلة للحصول على درجات علمية تستغرق حوالي أربع سنوات في العلوم الصعبة وأقل من ذلك للحصول على شهادات متقدمة في تخصصات مثل الرياضيات والهندسة وعلوم الكمبيوتر، لذلك فإن المعايير قد انخفضت بالفعل وعلى ما يبدو فإن هندسة البرمجيات الحقيقية تختفي في حال وجود المبرمجين أو المطوّرين مع القليل من التعليم الجامعي.

اقرأ أيضًا: لمهووسي البرمجة … أفضل قنوات يوتيوب لتعلم البرمجة بأنواعها

ما حدث حقًا هو أن تكنولوجيا الكمبيوتر نضجت وأصبحت نموذجية ومنتجة، لقد اعتدنا أن نطلب مهندسي البرمجيات المؤهّلين تأهيلًا عاليًا وحاصلين على شهادات رسمية في جميع جوانب الحوسبة لأن عدد أجهزة الكمبيوتر في أي شركة أو مؤسسة كان واحدًا فقط أو اثنين في أحسن الأحوال، حاسب واحد كبير للغاية ومعقد للغاية ومكلف. لم تكن هناك شبكات كما نفكر بها اليوم ولا شبكة إنترنت حتى ومع نضوج تكنولوجيا الحواسيب، لم يعد ممكنًا على شخص واحد أن يكون عالم الرياضيات والمهندس والمبرمج ومسؤول الشبكة ومسؤول قاعدة البيانات وأصبحت الأدوار الفنية موزعة بين العديد من المتخصصين المدربين بشكل مركّز في مجال واحد فقط، ويحدث ذلك في جميع المجالات الأخرى.

كيف ظهر “فني البرمجة”؟

cover photo

كما في مجال صناعة السيارات فقد رأينا أيضًا نموًا هائلًا فيه ولو كان جميع العاملين من المهندسين الميكانيكيين المتخصصين فقط لما تمكنا من تصنيع أو إصلاح السيارات، فنحن نحتاج إلى العديد من العاملين في مجالات أخرى كعمال الميكانيك مثلًا، وما نراه الآن ليس زوال الطلب على مهندس البرمجيات الحقيقي أو عالم الكمبيوتر ولكن نشهد زيادة الطلب على فنيي البرمجة.

هؤلاء العمال المهرة الجدد هم أولئك الذين لديهم معرفة أساسية في علوم الكمبيوتر ولكن فقط فيما يتعلق بالبرمجة، بالإضافة إلى التدريب العملي على البرمجة، وما يزال مهندسو البرمجيات وعلماء الكومبيوتر في ساحة العمل وربما يعملون بشكل أفضل من أي وقت مضى، كل ما هنالك أنه أصبح لديهم زميل جديد أكثر مرونة يجب أن يتقبلوه برحابة صدر.

كيف يمكننا تقسيم مهندسي البرمجيات؟

Software Engineer

مهندسي التطبيقات

يقوم مهندسو التطبيقات بإنشاء أو تكييف التطبيقات للشركات والمؤسسات من خلال تحليل احتياجات المستخدم النهائي، ويقومون بتصميم وبناء وتثبيت وصيانة هذه التطبيقات أو البرامج.

مهندسي النظم

يقوم مهندسو النظم بتنسيق إنشاء وصيانة وتطوير أنظمة الكمبيوتر الخاصة بالعمل أو المؤسسة، يقومون بتنسيق احتياجات كل قسم، ويقترحون التوجيهات الفنية، ويقومون بإعداد الشبكات.

مهارات مهندس البرمجيات

  • البرمجة
  • أساسيات علوم الكمبيوتر
  • الخوارزميات وهياكل البيانات
  • تحليل المعلومات
  • تصحيح أخطاء البرامج
  • اختبار البرمجيات

مهارات فني البرمجة

  • أن يكون قادرًا على فهم التعليمات المكتوبة.
  • أن يكون قادرًا على تحديد المشكلات في مجاله
  • أن يملك تفكيرًا ناقدًا عند حل مشكلة ما.
  • فهم الإرشادات من أعضاء الفريق.
  • الانتباه إلى التفاصيل واستكشاف الأخطاء وإصلاحها: يجب أن تكون قادرًا على العثور على الأخطاء الصغيرة في التعليمات البرمجية وإصلاحها

يمكنك الآن تحديد مستواك العلمي واختيار مكان العمل المناسب لك أو تغييره حسب رغبتك من خلال تطوير مستواك التعليمي. وبصراحة فرغم هذا كله، إن كنت ترغب في أن يكون عملك الأساسي في مجال البرمجة، فالحصول على بعض المعرفة الأساسية في علوم الكمبيوتر أمر لا مفرّ منه ولا يزال عليك تطوير مهاراتك وأسلوبك، والأمر إذًا ليس سهلًا. هو فقط اختيار من أين ستبدأ وما هو هدفك النهائي.

اقرأ أيضًا:للمبتدئين برمجيًا… تعرّف على مجالات البرمجة واللغات المستخدمة في كلّ منها!

0

شاركنا رأيك حول "مهندس برمجيات بتعليم رسمي أم فنّي برمجة بمهارة عالية؟ ما هي المشكلة وما هو الخيار الأفضل؟"