recent
أخبار ساخنة

متى يكون مهندس البرمجيات ليس مهندس برمجيات؟

 يعد " مهندس البرمجيات " أحد أكثر العناوين التي يتم إساءة استخدامها في عالم شركات التكنولوجيا الفائقة. وهي أيضًا واحدة من أشهرها.

متى يكون مهندس البرمجيات ليس مهندس برمجيات؟


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

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

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

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

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

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

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

قد يكون المصطلحان " مهندس برمجيات" و "مبرمج" محيرًا لمستخدم الكمبيوتر العادي. يربط معظمنا برامج الكمبيوتر بالمصطلح العام 'البرامج'. قد يبدو أن المصطلحات قابلة للتبديل. ومع ذلك ، فهي ليست كذلك. يختلف دور مهندس البرمجيات اختلافًا كبيرًا عن دور المبرمج. قبل أن نكتشف الفرق بين مهندس برمجيات ومبرمج ، دعنا نرى ما يعنيه مصطلح 'هندسة البرمجيات' وكيف يرتبط ببرمجة الكمبيوتر.

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

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

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

وظائف لمهندس البرمجيات

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

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

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

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

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


متى يكون مهندس البرمجيات ليس مهندس برمجيات؟
Bara'ah Naddaf

تعليقات

google-playkhamsatmostaqltradent