top of page
  • Shady Fanous

دليل مهندسي البرمجيات للعمل في مجال الذكاء الاصطناعي



هندسة البرمجيات، كما يعلم الجميع، مرتبطة ارتباطًا وثيقًا بممارسة الذكاء الاصطناعي (AI). ويتوقف نجاح أي توقعات موجَّهة نحو التكنولوجيا إلى حد كبير على براعة مهندسي البرمجيات - وهنا يأتي دوركم!


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


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


ما الدرجات العلمية الأنسب للعمل في مجال هندسة البرمجيات؟ هل يمكن لشخص من خارج هذه التخصُّصات العمل في هذا القسم؟


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


ما الوظائف التي يمكن أن يتقدَّم إليها خريج هندسة البرمجيات في مجال علوم البيانات والذكاء الاصطناعي؟


  • مهندس الواجهة الأمامية

  • مهندس الواجهة الخلفية

  • مهندس الويب المتكامل

  • مهندس ضبط الجودة

  • مهندس عمليات التطوير

  • مهندس الأمن

  • مصمم ألعاب

  • مطور تطبيقات الهاتف المحمول

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


ما المهارات الأساسية والتقنية المطلوبة للعمل والتفوق في مجال هندسة البرمجيات؟ وما المهارات الثانوية المطلوبة؟


بطبيعة الحال، تشمل المهارات التقنية الأساسية اللازم توافرها البرمجة واختبار البرمجيات وتطويرها.


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


وفي رأيي، ينبغي الإلمام ببعض المهارات الشخصية أو غيرها من المهارات المطلوبة في هذا المجال، والتي تشمل:


  • أخذ المبادرة: يُعد اقتراح أفكار جديدة أو حلول مختلفة لمشكلة ما هو مهارة ذات قيمة عالية يسعى أصحاب العمل إلى الاستعانة بها في الأعمال.


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


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


  • الأبحاث: في حين أن مهارة البحث تُعد من المهارات الأساسية في جميع المجالات، إلا أنها ذات صلة خاصة بمديري المنتجات الطموحين. أثناء اتمام مهامك بوصفك مدير منتج، ستتطلب مهامك إجراء أبحاث السوق لتتمكَّن من قياس مكان منتجك في السوق، وكذلك اتِّخاذ الخطوات اللازمة لتحسينه.


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


ما النصائح التي يُمكنك إعطاؤها للخريجين خارج مجال الخبرة في هذا القسم، والذين يرغبون في العمل في مجال هندسة البرمجيات؟


هندسة البرمجيات مجال واسع للغاية. ما عليكي سوى إلقاء نظرة على قائمة الوظائف التي يمكنك العمل بها بوصفك مهندسة برمجيات!


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


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


ما الذي يبحث عنه مديرو التوظيف في مجال هندسة البرمجيات في السير الذاتية للمتقدمين؟ ما الذي يجعل مهندس البرمجيات بارزًا في المقابلة؟


كما ذكرت سابقًا، أن التجربة خارج المناهج الدراسية أمر بالغ الأهمية في رحلتك إلى شغْل مهنة هندسة البرمجيات. إن العمل في مشروع شخصي أو مشروعين تقوم بإنجازها لا يقل أهمية عن إنجازاتك الأكاديمية، وهو مؤشر جيد على الخبرة العملية في هذا المجال والشغف به. وفي هذا الشأن، فإن أي صفحات ويب لحافظة الأعمال هي دائمًا ميزة إضافية "جيت هب" (Github) لمهندسي البرمجيات، و"بيهانس" (Behance) لمصممي البرامج.


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


bottom of page