السؤال ده بيتسأل كل يوم، والإجابات اللي بتلاقيها نوعين: إجابة بتقول «اختار اللي يريحك» — وديه مش إجابة، وإجابة من حد بيبيعلك كورس في مسار معيّن. خليني أديك مقارنة على أساس حاجة تقدر تقيسها: نوع المشكلة اللي هتقعد تحلها كل يوم.
الفرق الحقيقي: مين بيشوف شغلك
الفرونت إند شغله يتحوّل لحاجة الناس تشوفها. الباك إند شغله يتحوّل لحاجة الناس تعتمد عليها. الفرق ده مش تفصيلة، ده اللي بيحدد شكل يومك:
- في الفرونت إند، لما تكسر حاجة، هتشوفها فوراً بعينك. الزرار طلع في مكان غلط، الصفحة اتلخبطت على الموبايل. التغذية الراجعة فورية، وده مريح جداً وإنت بتتعلم.
- في الباك إند، لما تكسر حاجة، ممكن متشوفهاش دلوقتي. الاستعلام هيشتغل تمام على مية صف، ويقع على مية ألف. الفلوس هتتحسب غلط في حالة واحدة من ألف. التغذية الراجعة متأخرة، فبتتعلم تعتمد على الاختبارات واللوجز بدل عينك.
اللي بيحب النتيجة الفورية بيرتاح في الفرونت. واللي بيحب يفكر في «طب لو حصل كذا؟» بيرتاح في الباك.
مقارنة على الأرض
نوع المشكلة
- فرونت: الحالة على الشاشة، والتجاوب مع أحجام الشاشات، وسرعة التحميل، وإتاحة الاستخدام لكل الناس.
- باك: صحة البيانات، والصلاحيات، والأداء تحت ضغط، والتعامل مع الفشل.
أول أسبوع
- فرونت: هتطلع صفحة شكلها حلو في يومين. الإحساس بالإنجاز سريع.
- باك: أول أسبوع هيبقى شاشة سوداء وكلام نصّي. مفيش حاجة «تتفرج عليها».
الجزء اللي بيصعب بعدين
- فرونت: إدارة الحالة (state) في تطبيق كبير، واختلاف المتصفحات، وتغيّر الأدوات بسرعة.
- باك: تصميم قاعدة البيانات، والاستعلامات البطيئة، والعمليات المتوازية، والأمان.
سرعة تغيّر الأدوات
- فرونت: بتتغير أسرع. اللي تتعلمه النهاردة محتاج تحديث كل فترة.
- باك: أهدى. SQL اللي بتتعلمه دلوقتي هيفضل معاك سنين، ولارافيل بتطلع نسخة كبيرة كل سنة بجدول معلن، فمفيش مفاجآت.
سوق الشغل في مصر
- الاتنين عليهم طلب حقيقي. الفرق إن إعلانات الفرونت غالباً بتطلب فريم ورك بعينه (React مثلاً)، وإعلانات الباك بتطلب لغة + قاعدة بيانات + خبرة APIs. يعني مدخل الفرونت أضيق شوية وأوضح، ومدخل الباك أوسع لكن محتاج تثبت إنك فاهم البيانات مش بس الكود.
«طب الفل ستاك؟»
الفل ستاك مش مسار تبدأ بيه، ده حاجة بتوصلها. حد بيقولك ابدأ فل ستاك من الصفر يبقى بيطلب منك تتعلم تعقيدين في نفس الوقت وإنت لسه معندكش أساس تقيس بيه. أغلب اللي في السوق واصفين نفسهم فل ستاك بدأوا بجنب واحد لسنة أو أكتر، وبعدين نطّوا للتاني وهما فاهمين قواعد اللعبة.
الترتيب العملي: اتقن جنب لحد ما تبقى تقدر تسلّم فيتشر كاملة لوحدك، وبعدين خد الجنب التاني على مستوى «أعرف أشتغل بيه» مش «أنا متخصص فيه».
الترشيح بتاعي — بصراحة
لو إنت في سنة أولى أو تانية جامعة ومعندكش أي خلفية، وعايز تحس بإنجاز بسرعة عشان تكمّل: ابدأ فرونت إند. الحماس مورد محدود، والمسار اللي بيوريك نتيجة في يومين بيحافظ على الحماس ده.
لو إنت خريج، أو بتحوّل مسارك، أو معاك خلفية رياضية/تحليلية، وعايز أوسع باب شغل على المدى المتوسط: ابدأ باك إند. لسببين محددين:
- الشغل الباك إند أصعب على الأتمتة السطحية. صفحة شكلها حلو بقى سهل تطلعها بأدوات جاهزة؛ نظام صلاحيات صح على قاعدة بيانات متظبطة لأ.
- الباك إند بيديك مفاتيح تشتغل في مجالات تانية بعدين — البيانات، الأنظمة الداخلية للشركات، التكامل مع بوابات الدفع. الطريق من الباك إند لمجالات تانية أقصر.
وفي أكاديمية أنوبت بنشوف ده كل دفعة: اللي بيبدأ باك إند بيتعب أكتر أول شهر، وبيسبق في الشهر التالت لما المشاريع تكبر شوية.
اللي ميتغيرش مهما اخترت
- الأساسيات مشتركة: HTML وCSS الأساسي، وقواعد البرمجة، وGit، وإزاي تقرأ رسالة خطأ بدل ما تخاف منها.
- مشروع واحد كامل يساوي عشر كورسات نصّها اتفرجت عليها.
- الاختيار مش أبدي. التحويل بين المسارين في أول سنتين تكلفته قليلة جداً.
الخطوة الجاية
قرّرت باك إند؟ الترتيب المفصّل بالمراحل والمدد موجود هنا: [خريطة طريق الباك إند من الصفر لأول شغلانة](/blog/backend-roadmap)، وتقدر تشوف المسار المنظّم بالمشاريع في [كورس الباك إند](/courses/back-end).
وقرّرت فرونت؟ برضه تمام. المهم إنك تقفل الاختيار النهاردة وتبدأ بكرة، لأن أسوأ مسار هو اللي بتفضل تقارن فيه ستة شهور وإنت لسه مكتبتش سطر.