كيف تبرز خلال مقابلة التقنية

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

Q1: ما هي الطرق المحددة لا يمكن للمرشح أن ينجح فقط ، ولكن * تبرز * خلال المقابلة التقنية؟

A1: تعال إلى المقابلة مع مشروع للحديث عنه ، ولكن تأكد من أنه في المستوى الصحيح من التعقيد.

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

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

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

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

a2: فهم الأساسيات.

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

A3: تحدث بوضوح ودقة.

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

Q2: كيف ينبغي للمرشح الاستعداد للمقابلة التقنية؟ (أي مواقع ويب أو موارد محددة يجب أن يستخدموها للدراسة؟)

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

إذا كانت مقابلة موجهة نحو السبورة ، فتأكد من استخدام موارد مثل Pramp والكتب مثل Cracking the Coding Interview. إذا كان هناك المزيد من الإقران ، فتأكد من معرفة اللغة التي سيستخدمونها واستخدمها في بناء الجملة حتى لا تتعثر أثناء جلسة الإقران. إذا اتبعوا ممارسات تطوير محددة ، مثل TDD أو Github Flow ، فقم بالتحديث أو الدراسة. من الجيد والمناسب عادةً أن تسأل عن نوع المقابلة التي ستجريها واللغات التي سيتم استخدامها.

ولكن بشكل عام ، لا يزال هناك عدد قليل من الأشياء التي يمكن للمرشحين القيام بها بغض النظر عن نوع الشركة.

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

Q3: ما هي بعض الأخطاء الأكثر شيوعاً التي يراها المرشحون؟ كيف يمكن تجنب هذه الأخطاء؟

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

  1. لا تكون متعجرفًا أو لا يتمتع برأي كبير. يحدث هذا في بعض الأحيان عندما يتعلم الناس عملية أو تقنية جديدة ، مثل TDD ، ثم يصبحون مبشرًا لهذه التقنية بدون سياق. بالنسبة للمطورين المبتدئين أو أولئك الذين لديهم خبرة أقل من سنوات ، من المهم أن يتصور المرء أنه مرن ومتشوق للتعلم ، بحيث يمكن لصاحب العمل أن يتخيلك في مجموعة متنوعة من المشاريع والأدوار. حتى العبارات التي تبدو بريئة مثل "أنا لا أكتب رمزًا بدون اختبارات" أو "أنا أحب X ولا أحب Y" قد تصادف رأيًا مفرطًا. يسمع أصحاب العمل ذلك على أنه "مقيد في قدرتي على العمل بطريقة معينة ، حتى لو كنا بحاجة حقًا إلى العمل بهذه الطريقة" ، وهي على الأرجح ليست الرسالة التي يحاول المرشح إيصالها. بدلاً من ذلك ، يجب أن يخفف المرشح من تفضيله ؛ على سبيل المثال "أفضل كتابة الاختبارات بكل شفراتي" أو "لقد كنت أستمتع بـ X مؤخرًا ، ولكني أيضًا أمتلك خبرة مع Y".
  2. لا تخجل كثيرا لقد رأيت أن أرباب العمل يقدمون أعذارًا للمرشح عندما يفوتون أي سؤال ، ورأيت أصحاب العمل يتقلبون على أصغر الأخطاء في مقابلة لا تشوبها شائبة. ماهو الفرق؟ إنه "شعور" يمنح المرشح المقابلات. المقابلة لا تتعلق فقط بالإجابة على الأسئلة بشكل صحيح ، ولكن أيضًا تتعلق بالمحادثة. إذا انحرف تصرفك الطبيعي بحيث يمكنك حشد ما يكفي من الكلمات فقط للإجابة على السؤال وليس أكثر ، تدرب على إجراء المحادثة. من المهم الاستمرار في تدفق المحادثة. اضحك واجعل النكات عند منعطفات مناسبة. اسأل أسئلة جيدة. في نهاية المقابلة ، حتى لو فاتتك بعض الأسئلة ، يجب أن يكون "الشعور" العام الذي أجري به الشخص الذي أجري معه المقابلة إيجابياً. إذا كنت تعلم أنك لست محادثة رائعة ، فتأكد من التركيز على تحسين ذلك.
  3. لا تستسلم عن سؤال مفتوح. يبدو أن الكثير من المرشحين غارقون في الأسئلة المفتوحة حتى أنهم استسلموا قبل البدء. ستكون المقابلة الجيدة قد وصلت إلى حدود قدرتك وقد دفعتك إلى مجرد تفكير لمعرفة المشكلة. لذلك ، في مقابلة جيدة ، ستجعلك دائمًا تشعر بعدم الارتياح وستحصل على مشكلة لا يمكنك حلها على الفور. تأكد من إجراء عملية قبل المقابلة يمكنك الاعتماد عليها لتفكيك الأسئلة. إذا لم يكن لديك عملية ، فلن يكون من الممكن تحديد عملية واحدة على الفور. فكر في كيفية القيام بذلك مسبقًا. على سبيل المثال ، أحد الأشياء التي أوصي بها للناس هو PEDAC.

Q4: ما الذي تبحث عنه بالتحديد أثناء تحدي السبورة / الترميز؟

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

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

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

س 5: ما الذي يجب على المرشح فعله إذا لم يعرف الإجابة عن سؤال الترميز؟

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

تدرب على استخدام العملية قبل إجراء أي مقابلات (مرة أخرى ، راجع https://medium.com/launch-school/solving-coding-problems-with-pedac-29141331f93f)

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

Q6: ما هي نصيحتك رقم 1 للمرشحين تمر عملية مقابلة التكنولوجيا (خاصة لأول مرة)؟

اكتشف نوع المقابلة التي تجريها والممارسة والممارسة والممارسة!

Q7: أي نصائح / الحيل الأخرى التي ترغب في مشاركتها؟

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