إزاي تبني بورتفوليو (Portfolio) قوي يخطف عين الشركات الكبيرة؟
أكيد مريت باللحظة دي: بتقدم على شغل في شركة كبيرة، بتبعت الـ CV بتاعك، وفجأة بتجيلك رسالة "شكراً لاهتمامك، بس اختيارنا كان لحد تاني". الوجع الحقيقي مش في الرفض، الوجع لما تكون عارف إن مستواك التقني كويس، بس مش عارف توصله للشخص اللي بيعمل "سكريننج" (Screening) للطلبات. النهاردة هنتكلم عن البورتفوليو، اللي هو "وشك" قدام مسؤولي التوظيف (HR) ومديري التقنية (Tech Leads).
Table of contents [Show]
- 1 ليه البورتفوليو أهم من شهادتك الجامعية؟
- 2 ١. تنظيم الـ GitHub: واجهة بيتك البرمجي
- 3 ٢. نوعية المشاريع: بلاش تعمل "تطبيق الطقس" للمرة المليون
- 4 ٣. المساهمة في المشاريع مفتوحة المصدر (Open Source Contributions)
- 5 ٤. إزاي تعرض الكود بتاعك بذكاء؟
- 6 ٥. التحديات البرمجية (Coding Challenges)
- 7 نصيحة من أخ ليك
ليه البورتفوليو أهم من شهادتك الجامعية؟
في عالم البرمجة، الشركات الكبيرة زي جوجل أو الشركات الناشئة الناجحة (Startups) بيدوروا على حاجة واحدة: "القدرة على حل المشاكل" (Problem Solving). هما مش محتاجين حد حافظ كتب، محتاجين حد بيعرف يكتب كود نظيف (Clean Code) ومفهوم. بورتفوليو قوي يعني إنك مش بس بتكتب كود، ده معناه إنك بتعرف تبني نظام (System)، بتعرف تستخدم أدوات التحكم في الإصدارات (Git)، وبتعرف تشتغل في فريق.
١. تنظيم الـ GitHub: واجهة بيتك البرمجي
الـ GitHub بتاعك هو الـ (GitHub Profile) اللي الـ Tech Lead بيفتحه أول ما يشوف اللينك. لو دخل لقى ريبوزيتوري (Repository) باسم "test" أو "my-project-1"، هيقفل ويخرج فوراً. عشان كده، لازم تهتم بالـ README.
الـ README المحترم لازم يحتوي على:
- اسم المشروع ووصف سريع بيحل مشكلة إيه.
- طريقة التشغيل (Installation & Setup).
- التقنيات المستخدمة (Tech Stack).
- لقطات شاشة (Screenshots) أو فيديو ديمو لو المشروع واجهة مستخدم.
مثال لكود تنظيمي في ملف README:
## Project Name: E-Commerce API
### Tech Stack:
- Node.js
- Express
- MongoDB
- JWT for Authentication
### How to run:
1. git clone [repo-url]
2. npm install
3. npm run dev
٢. نوعية المشاريع: بلاش تعمل "تطبيق الطقس" للمرة المليون
مدير التقنية بيشوف آلاف المشاريع اللي شبه بعض. عشان تتميز، ابعد عن المشاريع التقليدية (To-do List أو Weather App). بدل ما تعمل تطبيق طقس، اعمل لوحة تحكم (Dashboard) بتعرض بيانات حقيقية من API وتحللها. الشركات بتدور على (Complexity). وريهم إنك بتعرف تتعامل مع (Authentication)، (Database Optimization)، و (API Integration).
٣. المساهمة في المشاريع مفتوحة المصدر (Open Source Contributions)
دي نقطة ذهبية. لما الـ Recruiter يشوف إنك عامل (Pull Request) في مكتبة مشهورة، دي رسالة بتقول: "أنا بعرف أقرأ كود غيري، وبحترم معايير الكود، وبقدر أشتغل في فريق كبير". مش لازم تكون خبير، ابدأ بـ (Bug Fix) بسيط أو تحسين في التوثيق (Documentation).
٤. إزاي تعرض الكود بتاعك بذكاء؟
الناس اللي بتبص على الكود بتاعك مش بيدوروا على "أذكى كود" (Code Golfing)، هما بيدوروا على "أوضح كود". استخدم مبادئ (Clean Code)، سمي المتغيرات بأسماء واضحة، ووزع المهام على (Components) أو (Modules). الكود ده مثال على اللي بيحبه مديرين التقنية:
// سيء:
const d = 1000 * 60 * 60 * 24;
// ممتاز ومفهوم:
const MILLISECONDS_IN_A_DAY = 1000 * 60 * 60 * 24;
٥. التحديات البرمجية (Coding Challenges)
حط مشاريعك اللي حليت فيها تحديات على منصات زي (LeetCode) أو (HackerRank). ده بيثبت إن عندك (Algorithmic Thinking) قوي، وده جزء أساسي في الـ (Technical Interview) للشركات الكبيرة.
نصيحة من أخ ليك
البورتفوليو مش سباق، هو "معرض فني" لمجهودك. مش لازم تملى الـ GitHub بتاعك بمشاريع مش كاملة. مشروع واحد قوي، كوده نضيف، ومكتوب له (Documentation) محترم، أحسن من 10 مشاريع مهملة. ركز على الجودة (Quality) مش الكمية (Quantity)، واهتم بإنك توضح "أنت فكرت إزاي" في حل المشاكل اللي واجهتها أثناء البناء. البرمجة رحلة مستمرة، وكل (Commit) بتعمله هو خطوة في طريقك للاحتراف.