# How to be senior؟


امس‏ ألقيت محاضرة في‏ الأجتماع الشهري لمجموعة EgyptIT (سابقاً Egypt web) بعنوان‏ "كيف تكون مطور محترف"، المحاضرة في الأصل ل[غازي إكرام](http://www.kaziekram.com/) القاها في جدة جييكس بعنوان "[How To Become A Php Geek](http://www.slideshare.net/kaziekram/how-to-become-a-php-geek-2571961)"، أضفت‏ بعض العناصر والمزيد من التطبيق والمناقشة‏ أثناء‏ المحاضرة، وهذه عناصر المحاضرة.

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

* يمكنه انتاج عمل أكثر في وقت أقل.
    
* يمكنه العمل على المشاريع الكبيرة طويلة الأمد.
    
* يمكنه العمل في فريق.
    

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

* اولى خطواتك في التدرج في عملك (مدير فريق، مدير مشاريع ... ألخ)
    
* فرصة اكبر للعمل في الشركات الكبيرة
    
* العمل على مشاريع ناجحة تكون مفيدة لك في المستقبل
    
* للحصول على راتب أكبر
    

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

* اتبع تنسيق قياسي لأكوادك PHP Coding style ( معايير [Zend](http://framework.zend.com/manual/en/coding-standard.html) ومعايير [PEAR](http://pear.php.net/manual/en/standards.php))
    
    * اكواد سهلة القراءة
        
    * أهتم بالتعليقات
        
    * أهتم بكتابة توثيق للكود، وشرحنا كم هو كتابة التوثيقات أمر سهل ( [PhpDocumentor](http://phpdoc.org/) - [Doxygen](http://www.doxygen.org/) )
        
    * أهتم بإستخدام نظام تحكم المراجعات (قريباً سأتحدث أكثر عن كيفية استخدمها وفائدتها للفرد ولفرق العمل)
        
* لا تعيد اخترع العجلة
    
    * لا تكتب فئة class أو دالة function وهي موجوده من قبل
        
    * لا تعيد ما كتبته من قبل
        
    * أستعن بموقع [PHPClasses.org](http://PHPClasses.org) و [SF.net](http://SF.net) للحصول على المكتبات التي تريدها
        
* طور من جودة أكوادك
    
    * أكتب اكواد بسيطة، كلما فكرت أكثر كتبت أقل، في نفس الوقت لا تحاول ان تكتب اكواد معقدة يصعب على فريقك فهمها
        
    * أكتب اكواد سهلة الصيانة
        
* أستخدام أطر العمل Frameworks
    
    * سهلة التطوير
        
    * هناك العديد من المكتبات
        
    * معظم المشاكل التي ستقابلك حلها غيرك من قبل
        
* استخدم انظمة إدارة المحتوى CMS
    
    * العديد من الأضافات متوفرة Plugins
        
    * كود سهل ومعروف للكثير
        
    * معظم متطلبات مشروعك ستجدها متوفرة به أفتراضياً او ببعض لأضافات البسيطة
        
* أستخدم IDEs
    
    * توفير للوقت
        
    * تعطيك المزيد من الكفائة
        
    * تساعدك في تنقيح وتصحيح الكود Debug
        

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

* تواصل مع غيرك من المبرمجين
    
* أقرأ أقرأ أقرأ
    
* أكتب تدوينات فهي لا تقل أهمية عن القرائة بل ان هناك إفادة لا تحصل عليها إلا من الكتابة
    
* قبل كتابتك للاكواد أبحث كيف كتبها غيرك اولاً
    
* شاك في احد المشاريع مفتوحة المصدر
    
* أستخدم أطار عمل جافا سكريبت (jQuery, MooTools .... ألخ)
    
* أستخدم أكثر من قاعدة بيانات (MySql, SqLite, ..... ألخ)
    
* أنشر معرفتك للغير
    

بعض الزملاء صورو المحاضرة بكاميرات موبيل، إن كانت مناسبة سيتم رفعها بإذن الله، ويمكن مشاهدة المحاضرة التي أعطاها غازي بالأنجليزية من [هنا](http://vimeo.com/7679926).

%[http://www.slideshare.net/kaziekram/how-to-become-a-php-geek-2571961]
