Back to "المقابلات الحرة لمطوري البرمجيات"

This is a viewer only at the moment see the article on how this works.

To update the preview hit Ctrl-Alt-R (or ⌘-Alt-R on Mac) or Enter to refresh. The Save icon lets you save the markdown file to disk

This is a preview from the server running through my markdig pipeline

Interviewing

المقابلات الحرة لمطوري البرمجيات

Friday, 13 September 2024

أولاً

أحد الجوانب التي تضايقني هي "كيفية إجراء مقابلات مع المطورين" هناك الكثير منهم وهم في ثلاثة معسكرات:

  1. الـ كيف ستنقل جبل فوجي؟ نهج مع منطق الألغاز ومعالجات الدماغ.
  2. دعونا نرى كم يمكنك أن تتذكر من درجة علم الحاسوب الخاص بك مع الأسئلة الخوارزمية.
  3. "يراقبك بينما تكتب الرمز" نهج مع تمارين الترميز.

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

المشكلة

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

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

مهنتنا مليئة بالاحراج الاجتماعية (ونعم مثل نفسي قليلا التوحدية)؛ مقابلة التي هي في نفس الوقت مرهقة وتتطلب التفاعل الاجتماعي بينما حل مشاكل الترميز وصفة للكارثة. إذاً كيف تُجري مقابلة مع شخص مُحرج إجتماعياً؟

الإحلال

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

وثانياً، ينبغي أن يكون إجراء المقابلة (أو المقابلات) خالياً من الإجهاد قدر الإمكان بالنسبة للمشاركين. وهذا يعني:

  1. إعطاء مهلة كافية. لا توقع مقابلة مع شخص ما مع 24 ساعة إشعار (أو أسوأ من ذلك في نفس اليوم).
  2. أوضح ما سيكون عليه شكل المقابلة، من سيكون هناك النتائج المتوقعة (هل هي النهائية، شاشة تقنية وما إلى ذلك).
  3. قَرأتْ الشخصَ يَرْفضُ. لا أستطيع التشديد على هذا بما فيه الكفاية. إذا كنت تجري مقابلة مع شخص ما يجب أن تعرف سيرته الذاتية من الداخل إلى الخارج وهذا ليس احتراما فحسب، بل يمنحك أيضا فرصة لطرح أسئلة عن تجربتهم.
  4. تأكّد من أنّ لديك التفاصيل في السمّة، إذا كان الفريق / التكبير يتأكّد أنّ لديهم الرابط. إذا كان ذلك شخصيا تأكد من أنهم يعرفون إلى أين يذهبون.

المُحْكِد

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

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

لقد توصلت إلى معلومة واحدة (بعد سنوات من أسئلة تسلسل فيبوناتشي، وعكس الصفائف، والقوائم المرتبطة وما إلى ذلك) هي كذلك.

مثل الحديث عن الـشرك الذي يعرفونه

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

لذا قبل المقابلة مع إشعار كاف (5 أيام هي جيدة عموما) أخبرهم أنك ستطلب منهم التحدث عن قطعة من الرموز التي كتبوها. أنا لا أطلب بشكل عام وصلة جيت هوب (الكثير من الناس حتى في المستويات العليا قد لا يكون لديهم هذا؛ لقد عملت على العديد من المشاريع التي هي ملكية ولا يمكن تقاسمها).

أوضحي أنكِ لا تطلبين مشروعاً كبيراً أو شفرة إبداعية مدهشة إنّها مجرّد شفرة يُمكنهم التحدّث عنها. الكثير من الناس لديهم هذه "العائلة" الأشياء، والاحتمالات هي أنهم لم يكونوا على بعد 365 يوما المساهمة في مشروع كبير مفتوح المصدر.

أنت لا توظف على أساس كم من وقت فراغ شخص ما لديه

لماذا لماذا لماذا؟

فلماذا أفضل هذا النهج؟ لماذا أعتقد أن هذه طريقة أفضل لإجراء مقابلات مع المطورين؟

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

حالات الاستثناء من القاعدة

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

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

ثانياً - متابعة المتابعة

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

logo

©2024 Scott Galloway