كيف تصبح المبرمج العبقري المطلوب في كل الشركات

متاكد بانك تريد ان تصبح مبرمج “عبقري”٬ ولكن حينما يصل الأمر الى مرحلة الجنون حينها يجب ان تعيد التفكير.

مؤخرا انتشرت تغريدة حول 10x engineer (تنطق: تين اكس انجنيير), نشرها رائد الأعمال Shekhar Kirani

قبل ان تستمر بالقراءة٬ دعني اخبرك ان كل ما ذكر بالاعلى هو الوصفة المثالية لتكوين جو عمل عقيم و سيجعلك مبرمجا سيئا جدا :no_mouth:

بدلا من ذلك النقاط التالية تتناول بعض النصائح و الأخطاء التي يجب أن تتجنبها لتصير مبرمجا رائعا :heart_eyes:


خطيئة العمل وحيدا

قد يبدو لكثير من الناس أن الاجتماعات ليست أكثر من مضيعة للوقت و الجهد. لا ننكر أنه يوجد الكثير من الاجتماعات بدون فائدة لكن ذلك يرجع لطريقتنا في التعامل معها, سواءا عدد الاجتماعات يكون مبالغ فيه أو قلة التنظيم و التخطيط.

لكن الاجتماعات بين أعضاء الفريق “بطريقتها المناسبة” عنصر ضروري لنجاح المشروع. وهناك العديد من الأسباب التي تجعلها كذلك:

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

لذلك تطوير مهارات التواصل و المناقشة وكل ما يدور حول هاته النقطة ضروري جدا لتجعل نفسك مبرمجا و مطورا رائعا.


التعلم المستمر هو ما يجعلك مبرمج محترف

الـ documentation هو مرجعك دائما و google صديقك و stackoverflow هو الساعد الأيمن لك.

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

لا أحد يعرف كل شيئ و لا أحد يتذكر كل شيئ.
و الوحيد الذي ينجح في تجاوز عقباته هو من يتقبل هاته الحقيقة و يفتح عينيه للنظر خلف الحدود التي رسمها لنفسه و تكسير قوقعته الخاصة.


ال 10x Engineer الحقيقي هو من يرفع اداء باقي الفريق “عشر مرات”

3c27e96f-490f-4847-a08b-ae206809cd23_text

في أغلب الأوقات البرمجة ليست لعبة فردية بل رياضة جماعية و النجاح سيكون للفريق كما يكون الفشل و بالتالي تطويرك لأداءك الفردي دون أداء الفريق كاملا سيكون بدون فائدة.

  • توجيه أعضاء الفريق و مساعدتهم
  • مشاركة الأفكار و مناقشتها مع الفريق
  • تقبل آراء الجميع و مواجهة النقد بطريقة ايجابية و بناءة
  • تنظيف الأكواد و كتابة documentation لها

كل هاته الصفات و الميزات تساعد في بناء جو عمل مناسب و مشجع لجميع أعضاء الفريق و تجعلهم يريدون العمل برفقتك باستمرار.

يمكنك تخيل الفرق بين عملك في جو مثل هذا و جو مأساوي مع أشخاص أنانيين و نرجسيين :confounded::confounded:


الإفراط في تعلم التكنولوجيات الجديدة

دائما نحن نجري وراء تعلم أدوات و لغات جديدة بدون فائدة و هذا لا يجعلنا بأي قدر مبرمجين أفضل بل هو مضيعة للوقت.

الأصح هو أن ننهمك بتعلم الأدوات التي نحتاجها و فقط.

اضافة الى ذلك تكوين حس منطقي و رياضي عالي و التدرب على حل المشاكل و الصعوبات هو ما يميز المبرمج الرائع.


لا يهم أي محرر نصوص تستعمله و لا نوع خلفية حاسوبك و لا الألوان التي تستعملها.

أظن أن هذا العنوان لا يحتاج الى أي شرح و أنت تتفق معي في ذلك :grin:


الخلاصة

اذا كان من الصحيح أن نطلق على أحد “المبرمج العبقري”
فلن يكون ذلك من نصيب أكثرنا معرفة أو معلومات، و لا على أكثرنا خبرة، و لا على أكثرنا غرابة ( من ساعات عمل و أشكال و ألوان الخلفية :sweat_smile:)

و لكن سيكون لأكثر عضو في الفريق فعالية و انتاجية سواءا على المستوى الفردي أو على المستوى الجماعي.

20 Likes

كلام رائع … وعن اذنك سأنسخه واشاركه مع الاخرين …وكن لدي سؤال اين اجد هذا الفريق الذي يكون بمستواي او اعلى مني بقليل …وكيف اختار اعضائه

2 Likes

بارك الله فيك أعجبني الموضوع

2 Likes

شكرا أخي @hichem2h :heart_eyes::heart_eyes: وشكرا على النصيحة وكيفية التعامل مع الفريق الذي تعمل معه فبدون الأفكار والآراء لكل فرد من الفريق لن يكون المشروع متكاملا ومتناسقا.
بارك الله فيك

2 Likes

شكرا @Tahamohmmed

المكان الأمثل الذي أنصحك به لتجد فريق مناسب هو مختلف المنتديات و القروبات الخاصة بالنقاشات البرمجية مثل منتدى كورتابز هنا.

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

بالتوفيق لك صديقي :wink:

2 Likes

شكرا على كلامكم الجميل :heart: @algorithm @MosaabLaboune

2 Likes

منشور جميل يوضح نقط مهمه قبل الخوض في التجارب الفردية بحثا عن الافضلية في المجتمع الرقمي

2 Likes

شكرا حسام :heart: @Hossam_Cj

1 Like

@hichem2h لاشكر على واجب :heart_eyes: :heart_eyes: :heart_eyes::kissing_heart::kissing_heart::kissing_heart:

2 Likes

documentation ما هو ؟

3 Likes

الـ documentation هو التوثيق الذي يأتي مع لغة البرمجة أو اطار العمل

مثلاً python لديها توثيق رسمي (ممل نوعاً ما :smile: لكن، يشرح كل شيء) هنا: https://docs.python.org/3/

ليس شرط أن يكون التوثيق ممل، مثلاً اطار العمل django لديه توثيق ممتع: https://docs.djangoproject.com/en/2.2/

الفرق بين المبرمج “العادي” و"العبقري" كما أوضح هشام، هو الاهتمام بالإطلاع على التوثيق لفهم الأمور كيف تجري بالضبط :wink:

2 Likes