دروس مستفادة من 60+ مقابلة تقنية في 30 يومًا: دليل شامل للمهندسين

دقائق القراءة: 12

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

كيف بدأت الرحلة؟ دوافع خوض أكثر من 60 مقابلة تقنية

“إذا كنت ستفشل، فافعل ذلك بسرعة.” — مقولة مجهولة

مثل أي مهندس برمجيات آخر، مررت بأنواع مختلفة من المقابلات التقنية؛ من مقابلة الترميز على السبورة (whiteboard coding interview) التي يخشاها الكثيرون، إلى تحديات الترميز غير الواقعية التي تستغرق 45 دقيقة على منصات مثل HackerRank. وبينما كانت بعض تجاربي في هذه المقابلات رائعة، كانت أخرى سيئة للغاية. لكنني كنت أرغب في أن أصبح بارعًا حقًا في إجراء المقابلات. أردت أن أتعلم كيف أتغلب على رهبة المقابلات وأن أبدو واثقًا من نفسي. مثل راكب الأمواج الماهر، أردت أن أتعلم كيف أركب أمواج الضغط العالي التي تأتي مع المقابلات.

كنت أبحث أيضًا عن تغيير وظيفتي في ذلك الوقت. لذلك، من يناير حتى أوائل مارس 2020، قدمت طلبات عمل وتم الاتصال بي من قبل شركات مقرها في الولايات المتحدة وأوروبا. تنوعت هذه الشركات بين الشركات الناشئة في مراحلها المبكرة مثل Coda، والشركات الناشئة في مراحلها المتقدمة مثل Crunchbase، ومن الشركات متوسطة الحجم مثل Affirm، إلى الشركات الكبرى مثل Amazon، وحتى الشركات التي تعمل عن بُعد مثل Webflow.

بعد أكثر من 109 طلبات، حصلت على أكثر من 60 مقابلة. شملت هذه المقابلات أكثر من 60 مقابلة هاتفية تمهيدية، وأكثر من 50 مقابلة فحص تقني عبر الهاتف، و18 مشروع ترميز منزلي (take-home coding projects)، و11 تحديًا برمجيًا، و8 مقابلات شخصية في الموقع (on-site interviews) بما في ذلك 3 مقابلات افتراضية.

دروس وعبر من التجربة: تحليل المراحل الأساسية لعملية التوظيف

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

مرحلة ما قبل المقابلة: الاستعداد الأمثل لترك انطباع أول رائع

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

فن تقديم الطلبات: الجودة تتفوق على الكمية

عندما بدأت في تقديم الطلبات للشركات، تخيلت أنه كلما زاد عدد الطلبات التي أقدمها، زادت فرصي في الحصول على مقابلة. يبدو منطقيًا، أليس كذلك؟ لذلك، حددت هدفًا بتقديم 5 طلبات يوميًا، بهدف الحصول على مقابلة واحدة لكل 5 طلبات. لكن استراتيجيتي لم تنجح كما كنت آمل. غالبًا ما كان عدد طلبات المقابلات التي أحصل عليها أقل من هدفي. كانت النسبة تقريبًا 1:12 – مقابلة واحدة لكل 12 طلبًا.

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

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

مثال على خطاب تقديمي فعال يبرز المهارات والخبرات الفريدة لمقدم الطلب

مدعومًا بسيرتي الذاتية، حقق هذا الخطاب التقديمي (cover letter) نسبة نجاح بلغت 95%. في المرة الوحيدة التي لم ينجح فيها، رد مدير التوظيف ليخبرني أن الوظيفة لم تعد متاحة ولكنه يرغب في التواصل مستقبلاً. الدرس هنا هو: كن حذرًا جدًا ومقصودًا بشأن الطلب الذي تقدمه – الجودة تتفوق على الكمية. والأفضل من ذلك، افعل كليهما. اعرف كفاءاتك وخبراتك الفريدة وقدمها بطريقة تتناسب مع احتياجات الشركة دون التضحية بشخصيتك. من المهم أيضًا فهم خصوصية الشركة التي تتقدم إليها واحتياجاتها المحددة. قد تكون لدى شركة ناشئة أو شركة صغيرة احتياجات مختلفة عن شركة أكبر، وبالتالي تتطلب مجموعة مهارات مختلفة. قم ببيع نفسك وتأكد من دعم عرض مبيعاتك أثناء المقابلة.

التعامل مع رسائل التوظيف: بناء شبكة علاقات مهنية

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

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

مرحلة المقابلة الفعلية: إتقان فن التواصل وحل المشكلات

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

المكالمات الهاتفية التمهيدية: الانطباع الأول يدوم

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

مقابلات الفحص التقني عبر الهاتف: وضوح التفكير مفتاح النجاح

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

الآن بعد أن عرفت كيف يجب أن تقود هذه المحادثة، السؤال التالي هو كيف تصبح جيدًا في هذا؟ لأن الحقيقة هي، بينما قد يأتي التعبير عن أفكارك بشكل طبيعي لبعض الناس، فإنه لا يأتي كذلك للآخرين – بمن فيهم أنا. لذا – تدرب! تدرب!! تدرب!!! تدرب على إجراء الكثير من المقابلات الوهمية. لقد جعلني إجراء هذه المقابلات الوهمية مع الأصدقاء أفضل وأكثر ثقة في شرح عملية تفكيري. ولكن الأهم من ذلك، أنها ساعدتني في تطوير عقلية جديدة حول المقابلات. بدأت أرى المقابلات كمحادثة مع صديق أو عضو في الفريق. تخيلت مجري المقابلة على الطرف الآخر كواحد من أصدقائي (كنت أحيانًا أعطي مجري المقابلة اسمًا في ذهني). لذا، ما كان يمكن أن يكون مقابلة عالية الضغط رأيته الآن كـ “دردشة” ودية حول مشكلة تقنية. هذه العقلية الجديدة، بمساعدة العديد من المقابلات التدريبية، ساعدتني على النمو في الثقة لدرجة أنني بدأت أستمتع بالمقابلات، آسف، الدردشات التقنية.

كيف تبدأ في حل المشكلات التقنية؟

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

استراتيجيات حل المشكلات بفعالية وكتابة كود نظيف

المرشحون الجيدون يعرفون كيفية حل مشكلة (مثل مشكلة فرز)، لكن أفضل المرشحين يعرفون حلولًا متعددة لمشكلة واحدة ويفهمون المفاضلات بين حل وآخر. المقابلات التي قدمت فيها أفضل أداء (تتبادر إلى ذهني Cruise) هي تلك التي لم أحل فيها التحدي الخوارزمي فحسب – بل كنت قادرًا أيضًا على تقديم حلول بديلة ومناقشة المفاضلات. اهدف إلى تقديم حلول متعددة لمشكلة ما، وكن مستعدًا لمناقشة المفاضلات، وكن قادرًا على تنفيذ واحد منها على الأقل. بالنسبة للمقابلات التقنية، اكتب كودًا نظيفًا. يهتم معظم مجري المقابلات بجودة الكود الخاص بك وكذلك صحة الحل الخاص بك. اهدف إلى كود معياري (modular code)، وافصل المنطق القابل لإعادة الاستخدام إلى دوال مساعدة (utility functions)، وسم المتغيرات والدوال بشكل صحيح، وكن محترفًا!

عندما تتعثر في حل مشكلة: فن التعاون والتواصل

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

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

التحديات البرمجية الموقوتة: استراتيجيات النجاح في منصات مثل HackerRank

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

  • اقرأ المشكلة وافهمها تمامًا.
  • اكتب كودًا يعمل أولاً، حتى لو كانت خوارزمية القوة الغاشمة (brute-force algorithm). قد لا يجتاز جميع حالات الاختبار ولكن احصل على بعض الكود العامل أولاً، نأمل في غضون أول 15-20 دقيقة.
  • اختبر الكود الخاص بك بأنواع مختلفة من المدخلات، حيث يساعدك هذا على التعامل مع الحالات الهامشية (edge cases).
  • حسن الكفاءة.
  • كرر الخطوتين 4 و 5 حتى الدقيقة الأخيرة.

الفهم الجيد لأساسيات علوم الحاسوب هو المفتاح هنا. لقد أضفت بعض الروابط إلى موارد مفيدة في قسم الموارد أدناه.

المشاريع المنزلية (Take-Home Projects): فرصة للتألق بجودة الكود

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

اختيار الأدوات المناسبة: استخدم ما تتقنه

خلال مقابلتي مع Course Hero، استخدمت تعبيرات منتظمة (regex) لحل مشكلة كان بإمكاني حلها باستخدام خوارزمية تحليل سلاسل أبسط. تبين أنه قرار سيء حيث لم أجتز المقابلة. الدرس المستفاد: استخدم فقط الأدوات التي تشعر بالراحة التامة معها ولديك الكثير من الخبرة بها.

المقابلات الشخصية (On-Site Interviews): نصائح لليوم الكبير

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

المقابلات الافتراضية (Virtual On-Site Interviews): تحديات ونصائح

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

مرحلة ما بعد المقابلة: التعلم من الفشل والاحتفاء بالنجاح

التعامل مع الفشل: فرصة للتعلم والتطور

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

الاحتفاء بالنجاح: حتى أصغر الإنجازات تستحق التقدير

احتفل بنجاحاتك، بغض النظر عن مدى صغرها في رأيك. لدي بعض الأفكار للاحتفال.

هل أصبحت أفضل بعد هذه التجربة المكثفة؟

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

خطواتك التالية: كيف تطور مهاراتك في المقابلات التقنية؟

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

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

إذا احتجت يومًا إلى شخص لإجراء مقابلة وهمية معك، فلا تتردد في التواصل معي على Twitter عبر @meekg33k.

مصادر إضافية مفيدة

الخلاصة التقنية

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

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *