ما يُسأل عنه في مقابلة DevOps، وكيفية الإجابة عن CI/CD وKubernetes والحوادث، وكيفية التدرّب على المحادثة.
مقابلة DevOps هي الأقل شبهًا باختبار على الأدوات. قائمة التقنيات يعرفها أي شخص قرأ إعلانات الوظائف. ما يُختبر شيء آخر: كيف تبني العملية، وماذا تفعل عندما ينهار كل شيء، وهل تعرف كيف تختار أداة تناسب المهمة لا استنادًا إلى كونها رائجة.
| المرحلة | ما الذي يُختبر |
|---|---|
| الفرز الأولي | الخبرة، التقنيات، التوقعات المالية |
| البنية التحتية | Linux، الشبكات، الحاويات، التنسيق |
| التطبيق العملي | تحليل الحوادث، التشخيص عبر السجلات |
| العمليات | CI/CD، الإصدارات، الأمان، العمل الجماعي |
إجابة «GitLab CI» ليست إجابة. المطلوب هو المسار: الالتزام → البناء → الاختبارات → المخرَج → النشر إلى البيئة، مع التراجع ومع ما يحدث عند الفشل في كل خطوة. تتضمن الإجابة الجيدة زمن البناء والخبرة السابقة في التحسين.
طبقات الصورة والتخزين المؤقت لها، وبناء multi-stage، ولماذا يُعدّ حجم صورة 1 غيغابايت مشكلة، وكيفية تمرير الأسرار، والفرق بين CMD وENTRYPOINT. غالبًا ما يُطلب شرح سبب فشل حاوية التطبيق عند بدء التشغيل.
Pod مقابل Deployment، وفحوصات readiness وliveness، وإعادة التشغيل وأسبابها، وحدود الموارد وOOMKill، وConfigMap وSecret، وIngress. سؤال عملي: «إذا لم يُقلع الـ pod — من أين ستبدأ؟»
Terraform مقابل Ansible، وstate والأقفال، وخطة قبل التطبيق، وخاصية idempotency. يتحققون مما إذا كنت تفهم ما الذي سيفعله `apply` قبل تشغيله.
ما الذي يحدث من المتصفح إلى التطبيق: DNS، وموازن الحمل، وTLS، والوكيل. مستويات LAN، ومشكلات MTU، والفرق بين L4 وL7. هنا يتم استبعاد أولئك الذين «فعلوا كل شيء عبر خطوط أنابيب جاهزة».
المقاييس مقابل السجلات مقابل التتبع، ما هو SLO وbudget، ولماذا «المراقبة موجودة، لكن الحوادث غير مرئية». حالة عملية: المستخدمون يشتكون، بينما المقاييس طبيعية — ماذا تفحص.
ترتيب الإجراءات عند تعطل بيئة الإنتاج، ومن يتخذ القرارات، وكيفية التواصل، وكيفية كتابة تقرير ما بعد الحادث دون البحث عن ملامين. هذا سؤال المحاورين المفضل: فهو يُظهر الخبرة الفعلية.
تعمل البنية كالتالي: العَرَض → الفرضيات → ما أتحقق منه → الحل → الوقاية.
«يبلغ المستخدمون عن خطأ 502. أبدأ بالنظر إلى موازن التحميل: هل الخوادم الخلفية ما زالت تعمل. إذا كانت كذلك — أتحقق من سجلات التطبيق ومقاييس الكمون. في المشروع السابق كان السبب استنفاد تجمع اتصالات قاعدة البيانات: ساعد في ذلك زيادة حجم التجمع وإضافة مهلة. الوقاية — تنبيه عند بلوغ نسبة استخدام التجمع، لا عند ظهور أخطاء 5xx».
— مثال على إجابة من واقع تحليل المقابلة
أسبوع بمعدل 30–40 دقيقة: مراجعة سبعة موضوعات، وتذكّر حادثتين أو ثلاثة حوادث واقعية مع أرقام، وخوض حوار كامل مرة واحدة. حالة الحادث أهم من النظرية — فغالبًا ما يتم استبعاد المرشحين فيها.
إذا كان مذكورًا في الوظيفة — فنعم، على الأقل على مستوى probes وlimits وتشخيص pod معطل. وإذا كانت البنية التحتية على أجهزة افتراضية، يسألون عن systemd والموازنة والنشر بدون orchestrator.
نعم — Python أو Go أو Bash على مستوى سكربتات الأتمتة. أما live coding الكامل فأقل شيوعًا، لكن قد يُطلب منك تحليل سكربت مكتوب من شخص آخر وإيجاد الخطأ فيه.
قلها بصراحة وأظهر المبدأ: «لم أعمل بهذا، لكن المهمة تُحل بالطريقة نفسها التي تُحل بها X — عبر وصف تصريحي وتشغيل idempotent». المحاوِر يختبر قابلية نقل التفكير، لا معرفة API.
بنطاق، لا برقم واحد، استنادًا إلى السوق. التحليل المفصل — في المقال مفاوضات الراتب.
صِف الموقف بجملة واحدة — «مقابلة مهندس DevOps، Kubernetes وCI/CD، أربع سنوات من الخبرة» — ثم خُض الحوار في أداة التدريب. سيطرح المدرب أسئلة حول دورك وسيراجع الإجابات بعد المحادثة.
تذكّروا حادثتين من حوادثكم واكتبوهما وفق المخطط: العَرَض — الفرضيات — ما الذي تحققتم منه — الحل — الوقاية. ثم استعرضوا الحالة بصوت مسموع: افتحوا HintMeTalk AI، وضع «المدرب»، صفوا الوظيفة بجملة واحدة. بعد التحليل يظهر أين تبدأون بالإصلاح دون التحقق من الفرضية.
تحليلات لأدوار أخرى: Java، Python، الواجهة الأمامية، محلل نظم.
تدرّب على هذه المهارة في HintMeTalk AI
افتح التطبيق