How to be senior؟

امس‏ ألقيت محاضرة في‏ الأجتماع الشهري لمجموعة EgyptIT (سابقاً Egypt web) بعنوان‏ "كيف تكون مطور محترف"، المحاضرة في الأصل لغازي إكرام القاها في جدة جييكس بعنوان "How To Become A Php Geek"، أضفت‏ بعض العناصر والمزيد من التطبيق والمناقشة‏ أثناء‏ المحاضرة، وهذه عناصر المحاضرة.

ما هي مواصفات المبرمج المحترف Senior؟

  • يمكنه انتاج عمل أكثر في وقت أقل.

  • يمكنه العمل على المشاريع الكبيرة طويلة الأمد.

  • يمكنه العمل في فريق.

لماذا اطور من نفسي كي أكون مبرمج محترف ؟

  • اولى خطواتك في التدرج في عملك (مدير فريق، مدير مشاريع ... ألخ)

  • فرصة اكبر للعمل في الشركات الكبيرة

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

  • للحصول على راتب أكبر

كيفية زيادة الكفائة البرمجية

  • اتبع تنسيق قياسي لأكوادك PHP Coding style ( معايير Zend ومعايير PEAR)

    • اكواد سهلة القراءة

    • أهتم بالتعليقات

    • أهتم بكتابة توثيق للكود، وشرحنا كم هو كتابة التوثيقات أمر سهل ( PhpDocumentor - Doxygen )

    • أهتم بإستخدام نظام تحكم المراجعات (قريباً سأتحدث أكثر عن كيفية استخدمها وفائدتها للفرد ولفرق العمل)

  • لا تعيد اخترع العجلة

    • لا تكتب فئة class أو دالة function وهي موجوده من قبل

    • لا تعيد ما كتبته من قبل

    • أستعن بموقع PHPClasses.org و SF.net للحصول على المكتبات التي تريدها

  • طور من جودة أكوادك

    • أكتب اكواد بسيطة، كلما فكرت أكثر كتبت أقل، في نفس الوقت لا تحاول ان تكتب اكواد معقدة يصعب على فريقك فهمها

    • أكتب اكواد سهلة الصيانة

  • أستخدام أطر العمل Frameworks

    • سهلة التطوير

    • هناك العديد من المكتبات

    • معظم المشاكل التي ستقابلك حلها غيرك من قبل

  • استخدم انظمة إدارة المحتوى CMS

    • العديد من الأضافات متوفرة Plugins

    • كود سهل ومعروف للكثير

    • معظم متطلبات مشروعك ستجدها متوفرة به أفتراضياً او ببعض لأضافات البسيطة

  • أستخدم IDEs

    • توفير للوقت

    • تعطيك المزيد من الكفائة

    • تساعدك في تنقيح وتصحيح الكود Debug

التطوير الذاتي

  • تواصل مع غيرك من المبرمجين

  • أقرأ أقرأ أقرأ

  • أكتب تدوينات فهي لا تقل أهمية عن القرائة بل ان هناك إفادة لا تحصل عليها إلا من الكتابة

  • قبل كتابتك للاكواد أبحث كيف كتبها غيرك اولاً

  • شاك في احد المشاريع مفتوحة المصدر

  • أستخدم أطار عمل جافا سكريبت (jQuery, MooTools .... ألخ)

  • أستخدم أكثر من قاعدة بيانات (MySql, SqLite, ..... ألخ)

  • أنشر معرفتك للغير

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