ملفي على GitHub كان مقبرة للمشاريع المنسية: كيف حولته إلى أداة تسويق تجذب أفضل الفرص؟

السلام عليكم يا جماعة الخير، معكم أخوكم أبو عمر.

خليني أحكيلكم قصة صارت معي قبل كم سنة. كنت قاعد في مقابلة لوظيفة “Senior Software Engineer” في شركة محترمة جداً. الأمور كانت ماشية تمام، والأسئلة التقنية كانت “لوز”، وأنا بجاوب بثقة. لآخر المقابلة، ابتسم المدير التقني وسألني سؤال بسيط: “ممتاز يا أبو عمر، كل إجاباتك رائعة. ممكن نشوف ملفك على GitHub؟”

في هذيك اللحظة، حسيت كأنه حدا كبّ عليّ سطل ميّة باردة. يا زلمة، أي GitHub؟ أنا ملفي هناك كان عبارة عن مقبرة! مشاريع من أيام الجامعة ما بتشتغل، مشاريع نسخ-لصق من دروس على يوتيوب، أسماء مستودعات (repositories) زي “test1” و “project-final-final”. آخر commit عملته كان قبل 8 شهور ومكتوب فيه “update”. شعرت بخجل شديد وأنا بحكيله “والله يا خوي مش محدّثه من فترة طويلة”.

طبعاً، ما أخذت الوظيفة. لكن هذيك الحادثة كانت صفعة صحّتني. أدركت إنه في عالمنا اليوم، ملفك على GitHub هو مش مجرد مكان لتخزين الكود، هو واجهتك الرقمية، وبطاقة عملك اللي بتحكي عنك قبل ما أنت تحكي. ومن يومها، قررت أحوّل هاي “المقبرة” لمعرض فني، لأداة تسويق حقيقية. واليوم، بدي أشارككم الخلاصة وكيف تعملوا نفس الإشي.

لماذا ملفك على GitHub هو بوابتك الأولى للفرص؟

قبل ما ندخل في “كيف”، خلينا نتفق على “ليش”. كثير من المبرمجين المبتدئين وحتى المحترفين بيتعاملوا مع GitHub على أنه مجرد “Google Drive” للكود. لكن الحقيقة أعمق من هيك بكثير:

  • إثبات عملي (Proof of Work): سيرتك الذاتية (CV) بتحكي “أنا أستطيع بناء كذا وكذا”. ملفك على GitHub بفرجي العالم “أنا بنيت كذا وكذا، وتفضل شوف الكود بنفسك”. هذا هو الفرق بين الادعاء والإثبات.
  • نافذة على عقليتك: الطريقة اللي بتنظم فيها مشاريعك، أسماء المتغيرات، جودة الـ commit messages… كلها بتعطي انطباع عن طريقة تفكيرك كمهندس برمجيات. هل أنت منظم؟ هل تهتم بالتفاصيل؟ هل تعرف كيف تتعاون مع فريق؟
  • مقياس للشغف والمبادرة: لما مسؤول التوظيف يشوف عندك مشاريع شخصية، ومساهمات في مشاريع مفتوحة المصدر، ونشاط مستمر، بيفهم فوراً إنك مش مجرد موظف بتشتغل من الـ 9 للـ 5. أنت شخص شغوف بالتقنية وبتحب تتعلم وتطور من حالك.

نصيحة من أبو عمر: مسؤول التوظيف أو القائد التقني المحترف ما بعدّ المربعات الخضرا (Contribution Graph) وبس. هو بفتح مشروع أو مشروعين وبقرأ الكود. بده يشوف “الشغل النظيف” مش الكمية.

تشريح ملف GitHub احترافي: خطوة بخطوة

يلا نمسك الملف حبة حبة ونشوف كيف نحوله لشيء “مرتب” و”بفتح النفس”.

1. صفحتك الشخصية (Profile README.md): واجهتك الرقمية

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

كيف تعملها؟ بسيطة. أنشئ مستودع (repository) جديد بنفس اسم المستخدم الخاص فيك بالضبط. مثلاً، إذا كان اسم المستخدم تبعك “abu-omar-dev”، فاسم المستودع لازم يكون “abu-omar-dev”. تأكد من أنك تعمله “Public” وتضيف ملف README.md. أي إشي بتكتبه في هذا الملف راح يظهر في صفحتك الرئيسية.

شو أكتب فيه؟

  • مقدمة قصيرة عنك: مين أنت وشو بتعمل.
  • التقنيات اللي بتشتغل فيها (Tech Stack).
  • روابط حساباتك المهنية (LinkedIn, موقعك الشخصي, Twitter).
  • (اختياري) إحصائيات ظريفة عن نشاطك على GitHub.

مثال عملي (قالب Markdown بسيط):


<h1>مرحباً 👋، أنا أبو عمر</h1>
<p>مبرمج فلسطيني متخصص في الذكاء الاصطناعي وتطوير الويب. أؤمن بأن التكنولوجيا يمكنها حل مشاكل حقيقية، وأستمتع ببناء تطبيقات مفيدة ومبتكرة.</p>

<h3>🚀 التقنيات والأدوات التي أستخدمها:</h3>
<p>
  <img src="https://img.shields.io/badge/Python-3776AB?style=for-the-badge&logo=python&logoColor=white" alt="Python">
  <img src="https://img.shields.io/badge/JavaScript-F7DF1E?style=for-the-badge&logo=javascript&logoColor=black" alt="JavaScript">
  <img src="https://img.shields.io/badge/React-20232A?style=for-the-badge&logo=react&logoColor=61DAFB" alt="React">
  <img src="https://img.shields.io/badge/Docker-2496ED?style=for-the-badge&logo=docker&logoColor=white" alt="Docker">
</p>

<h3>📫 كيف تتواصل معي:</h3>
<p>
  <a href="https://linkedin.com/in/your-username">LinkedIn</a> | 
  <a href="https://your-blog.com">مدونتي الشخصية</a>
</p>

<!-- إحصائيات ظريفة (اختياري) -->
<p>
  <img align="center" src="https://github-readme-stats.vercel.app/api?username=YOUR_USERNAME&show_icons=true&theme=dracula" alt="GitHub Stats" />
</p>

نصيحة من أبو عمر: لا تبالغ. خليها بسيطة واحترافية. ضيف لمسة شخصية، مثلاً جملة عن هواية بتحبها زي “أعشق زراعة النعناع في البلكونة” أو “أستمتع بقراءة كتب التاريخ”. هذا يجعلك تبدو إنساناً حقيقياً وليس مجرد آلة لكتابة الكود.

2. المشاريع المثبتة (Pinned Repositories): جواهر التاج

GitHub بيعطيك إمكانية تثبيت 6 مشاريع في أعلى صفحتك. هدول هم “جواهر التاج”. لا تختارهم بشكل عشوائي. لازم يكونوا أفضل شغل عندك. هم أول مشاريع رح يضغط عليها مسؤول التوظيف.

كيف تختار المشاريع اللي بدك تثبتها؟

  • مشروع متكامل: مشروع بيعرض قدرتك على بناء تطبيق كامل من الألف إلى الياء (واجهة أمامية، خلفية، قاعدة بيانات).
  • مشروع فيه تحدي تقني: مشروع استخدمت فيه خوارزمية معقدة، أو تعاملت مع مكتبة صعبة، أو حليت فيه مشكلة غير تقليدية. هذا بيفرجي عمقك التقني.
  • مشروع “نظيف”: مشروع الكود فيه مرتب، والـ README تبعه كامل وواضح. حتى لو كان بسيطاً، إذا كان منظماً فهو يعكس احترافيتك.
  • مشروع فيه رابط حي (Live Demo): ما في أحسن من إنك تسمح للناس تجرب مشروعك مباشرة. استخدم خدمات مجانية مثل Vercel, Netlify, أو Heroku لنشر مشاريعك.

3. جودة المشاريع نفسها: “الحكي مش زي الشوف”

هون مربط الفرس. ممكن يكون عندك أحلى صفحة شخصية، لكن إذا المشاريع نفسها كانت “أي كلام”، كل مجهودك راح عالفاضي. ركز على هاي النقاط في أفضل 3-4 مشاريع عندك:

ملف الـ README.md لكل مشروع: دليل المستخدم

كل مشروع لازم يكون فيه ملف README ممتاز. تخيل إنه زميلك الجديد انضم للفريق وبده يشتغل على مشروعك. هل ملف الـ README كافي ليفهم المشروع ويشغّله بدون ما يسألك؟

مكونات الـ README المثالي للمشروع:

  • اسم المشروع وشعار (اختياري).
  • وصف واضح: المشروع بيعمل إيش؟ وليش عملته؟
  • لقطات شاشة أو GIF متحرك: الصورة بألف كلمة. استخدم أدوات مثل `ScreenToGif` لتسجيل فيديو قصير لواجهة المستخدم.
  • التقنيات المستخدمة (Tech Stack): قائمة باللغات والمكتبات والأدوات.
  • كيفية التثبيت والتشغيل (Installation & Usage): أوامر واضحة ومباشرة لنسخ المشروع، تثبيت الاعتماديات، وتشغيله محلياً.
  • رابط النسخة الحية (Live Demo) إن وجد.

نظافة الكود (Clean Code): الأناقة في البساطة

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

  • أسماء ذات معنى: سمّي المتغيرات والدوال بأسماء بتوصف وظيفتها. بدل `x` و `data`، استخدم `userList` أو `processPayment`.
  • دوال صغيرة ومحددة: كل دالة لازم تعمل شغلة وحدة بس. بدل دالة من 100 سطر بتعمل كل شي، قسمها لـ 5 دوال صغيرة كل وحدة بتعمل جزء من المهمة.
  • تجنب التكرار (DRY – Don’t Repeat Yourself): إذا لقيت حالك بتنسخ وتلصق نفس قطعة الكود، معناها لازم تحولها لدالة قابلة لإعادة الاستخدام.
  • التعليقات (Comments): لا تكتب تعليقات تشرح “ماذا” يفعله الكود. الكود لازم يشرح نفسه. اكتب تعليقات تشرح “لماذا” كتبت الكود بهذه الطريقة، خصوصاً إذا كان في حل غير متوقع أو خدعة معينة.

نصيحة من أبو عمر: “الكود النظيف زي الأكل اللي طبخته إمك، مفهوم ومرتب وبفتح النفس. أما الكود المعجوق زي أكل المطاعم اللي ما بتعرف شو مكوناته، بتخاف تاكله!”

تاريخ الـ Commits: قصة تطوير المشروع

رسائل الـ commit تبعتك هي قصة مشروعك. لما تكون الرسائل واضحة ومنظمة، بتفرجي إنك بتعرف تشتغل ضمن فريق وتتبع أفضل الممارسات.

قارن بين هدول المثالين:

سيء 👎:


- update
- fix
- added stuff
- final

جيد 👍 (باستخدام صيغة Conventional Commits):


- feat: Add user login functionality with JWT
- fix: Correct calculation error in payment processing
- docs: Update installation guide in README.md
- refactor: Improve performance of data fetching hook

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

خطة عمل: من مقبرة إلى معرض فني في أسبوع

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

  • اليوم 1-2: جرد وتنظيف. افتح كل مستودعاتك. المشاريع القديمة جداً أو اللي بتخجل منها؟ اعملها `Archive` أو `Private`. لا تحذفها، ممكن تحتاجها يوماً ما، بس اخفيها عن العالم.
  • اليوم 3-4: تلميع الجواهر. اختار أفضل 2-3 مشاريع عندك. ركز كل طاقتك عليهم. اكتبلهم ملف README خرافي، نظّف الكود، ضيف تعليقات مفيدة. إذا ما عندك مشروع كويس، هذا هو الوقت لتبدأ مشروع صغير بس يكون متكامل ونظيف.
  • اليوم 5: بناء الواجهة. صمم صفحتك الشخصية (Profile README.md). استخدم القالب اللي فوق كنقطة بداية وضيف لمستك الخاصة.
  • اليوم 6: الترتيب النهائي. ثبت أفضل مشاريعك (Pinned Repositories)، راجع سيرتك الذاتية الصغيرة (Bio) تحت اسمك، وتأكد من أن صورة ملفك الشخصي احترافية.
  • اليوم 7: المراجعة والنشر. اطلب من صديق مبرمج أو زميل يلقي نظرة على ملفك ويعطيك رأيه. عين ثانية دايماً بتشوف أشياء أنت ما انتبهتلها.

الخلاصة: ملفك هو أنت… بنسختك الرقمية 🧑‍💻

تحويل ملفك على GitHub من مجرد مخزن للكود إلى أداة تسويق قوية هو استثمار في مستقبلك المهني. هو مش مجرد “تظبيط شكل”، هو تغيير في العقلية. هو أن تبدأ بالتعامل مع كل سطر كود تكتبه كجزء من هويتك التقنية.

تذكر، ملفك هو قصتك. احرص على أن تروي قصة مبرمج شغوف، منظم، ومحترف. القصة اللي بتخلي أفضل الشركات تحكي: “هذا هو الشخص الذي نبحث عنه”.

بالتوفيق يا جماعة الخير، وإذا عندكم أي سؤال، أنا موجود.

أبو عمر

سجل دخولك لعمل نقاش تفاعلي

كافة المحادثات خاصة ولا يتم عرضها على الموقع نهائياً

آراء من النقاشات

لا توجد آراء منشورة بعد. كن أول من يشارك رأيه!

آخر المدونات

التكنلوجيا المالية Fintech

عمليات الاحتيال كانت تستنزف أرباحنا بصمت: كيف أنقذني ‘نموذج كشف الاحتيال’ القائم على الذكاء الاصطناعي من خسارة ثقة العملاء؟

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

26 مارس، 2026 قراءة المزيد
أتمتة العمليات

كل سيرفر جديد كان قصة رعب: كيف أنقذتني ‘البنية التحتية كشيفرة’ (IaC) من فوضى الإعدادات اليدوية؟

أشارككم قصة من قلب المعاناة مع إعداد السيرفرات يدوياً، وكيف كانت "البنية التحتية كشيفرة" (IaC) وتحديداً أداة Terraform هي طوق النجاة. مقالة عملية للمبرمجين ومديري...

26 مارس، 2026 قراءة المزيد
نصائح برمجية

شفرتي كانت هرماً من الشروط المتداخلة: كيف أنقذتني ‘شروط الحماية’ (Guard Clauses) من كابوس الـ if/else؟

هل تعاني من شفرات برمجية معقدة ومليئة بالـ if/else المتداخلة؟ في هذه المقالة، أشاركك تجربتي الشخصية وكيف ساعدتني تقنية "شروط الحماية" (Guard Clauses) في تحويل...

26 مارس، 2026 قراءة المزيد
​معمارية البرمجيات

خدماتنا كانت متشابكة ككرة صوف: كيف أنقذتني ‘المعمارية الموجهة بالأحداث’ (EDA) من كابوس الاعتماديات الهشة؟

أتذكر جيدًا ذلك اليوم الذي انهار فيه نظامنا بالكامل بسبب تحديث بسيط في خدمة الإشعارات. هذه هي قصة رحلتي من معمارية "كُبّة الصوف" المترابطة بإحكام...

26 مارس، 2026 قراءة المزيد
خوارزميات

ذاكرة التخزين المؤقت كانت بلا فائدة: كيف أنقذتني خوارزمية ‘الأقل استخدامًا مؤخرًا’ (LRU) من بطء قاعدة البيانات؟

أشارككم قصة حقيقية عن مشروع كاد أن يفشل بسبب بطء قاعدة البيانات رغم استخدامي للتخزين المؤقت. اكتشفوا كيف كانت خوارزمية بسيطة مثل LRU هي طوق...

26 مارس، 2026 قراءة المزيد
تجربة المستخدم والابداع البصري

ألواني الزاهية كانت فخاً: كيف أنقذني ‘تباين الألوان’ من تصميم واجهات كارثية؟

أشارككم قصة حقيقية من بداياتي، عندما كاد حبي للألوان الزاهية أن يدمر مشروعاً كاملاً. اكتشفوا معي كيف تعلمت بالطريقة الصعبة أهمية تباين الألوان (Color Contrast)...

26 مارس، 2026 قراءة المزيد
البودكاست