مقدمة: لماذا PHP ليست لغة قديمة بل أداة عمل
\nيسمع العديد من المبتدئين: "PHP هي لغة الماضي". لكن الواقع هو: أكثر من 78% من جميع المواقع في العالم (بما في ذلك WordPress و Laravel و Bitrix) تعمل بلغة PHP. الطلب على مطوري PHP لا يزال مستقراً، خاصة في قطاع دعم المشاريع القديمة والحلول المؤسسية. ومع ذلك، من الصعب الحصول على وظيفة Junior أو Middle بدون خطة واضحة. في هذه المقالة، سنشرح كيفية إعداد السيرة الذاتية، وما هي المهارات التي يجب تطويرها، وكيفية التصرف في المقابلة. كل ذلك مع أمثلة كود حقيقية ونماذج.
\n\n1. ما هي المهارات التي يحتاجها مطور PHP حقاً في عام 2025؟
\nلكي لا تذهب سيرتك الذاتية إلى سلة المهملات، يجب أن تظهر ليس معرفة بناء الجملة، بل فهم الهندسة المعمارية. إليك الحد الأدنى لمتطلبات Junior:
\n- \n
- البرمجة كائنية التوجه في PHP — الوراثة، تعدد الأشكال، التغليف، الواجهات والسمات. \n
- العمل مع قواعد البيانات — MySQL، PDO، كتابة استعلامات نظيفة وفهم الفهارس. \n
- الأطر (Frameworks) — واحد على الأقل: Laravel (الأول)، Symfony أو Yii2. \n
- نظام التحكم بالإصدارات — Git (الفروع، الدمج، إعادة الأساس). \n
- أساسيات الأمان — حقن SQL، XSS، CSRF. \n
مثال على كود بسيط لكن صحيح للعمل مع قاعدة البيانات عبر PDO:
\n<?php\nclass UserRepository {\n private PDO $pdo;\n\n public function __construct(PDO $pdo) {\n $this->pdo = $pdo;\n }\n\n public function findById(int $id): ?array {\n $stmt = $this->pdo->prepare('SELECT * FROM users WHERE id = :id');\n $stmt->execute(['id' => $id]);\n $result = $stmt->fetch(PDO::FETCH_ASSOC);\n return $result ?: null;\n }\n}\n?>\nهذا الكود يظهر معرفة بالتصنيف (Typing)، حقن التبعيات (DI) والعمل الآمن مع الاستعلامات.
\n\n2. كيفية إعداد سيرة ذاتية لمطور PHP: نموذج خطوة بخطوة
\nيقضي مسؤولو التوظيف في المتوسط 7 ثوانٍ في مراجعة السيرة الذاتية. مهمتك هي جعل هذه الـ 7 ثوانٍ تدفعهم للاتصال بك. استخدم الهيكل التالي:
\n2.1. العنوان ومعلومات الاتصال
\nاكتب بوضوح: "PHP Developer (Junior/Middle)" — بدون إبداعات مثل "Guru of Code". أضف Telegram، البريد الإلكتروني، GitHub ورابط إلى معرض الأعمال.
\n2.2. المهارات الرئيسية
\nاستخدم قوائم بدلاً من النص. مثال:
\n- \n
- اللغات: PHP 8.x، JavaScript (أساسي)، SQL \n
- الأطر: Laravel 10، Livewire \n
- قواعد البيانات: MySQL، PostgreSQL، Redis \n
- الأدوات: Git، Docker، Composer، PHPUnit \n
2.3. الخبرة العملية (حتى لو لم تكن موجودة)
\nإذا لم تكن لديك خبرة تجارية — قم بوصف المشاريع الشخصية (pet-projects). مثال: "طورت خدمة لتقصير الروابط باستخدام Laravel: تسجيل الدخول، لوحة التحكم، اختبارات (PHPUnit)". أضف رابطاً إلى المستودع.
\n2.4. مثال كود في السيرة الذاتية
\nفي قسم "عن نفسي" يمكنك إضافة مقتطف صغير يظهر أسلوبك. على سبيل المثال:
\n<?php\n// مثال على تنفيذ نمط Strategy\ninterface PaymentGateway {\n public function pay(float $amount): bool;\n}\n\nclass StripePayment implements PaymentGateway {\n public function pay(float $amount): bool {\n // ... المنطق\n return true;\n }\n}\n?>\nهذا سيميزك فوراً بين المرشحين الذين يكتبون "اجتماعي، مسؤول".
\n\n3. التحضير للمقابلة: الأسئلة والمهام العملية
\nفي المقابلة، سيتم اختبارك ليس فقط على النظرية، ولكن أيضاً على القدرة على حل المشكلات. إليك أهم 5 مواضيع يجب مراجعتها:
\n- \n
- الطرق السحرية (
__get,__call,__invoke) — أين ولماذا تُستخدم. \n - أنماط التصميم — Singleton، Factory، Repository، Dependency Injection. \n
- الاختلافات بين