ابدأ مجال
الـ software Engineering
بشكل سليم

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

التوازن بين الأسس العلمية وطرق التنفيذ على أرض الواقع

بلا الشك التعليم الأكاديمي مفيد ومطلوب
لكن كلنا عندنا بعض التحفظات والملاحظات عليه
بنتعرض لنظريات كتير واحياناً بنتعرض لها بشكل غير مناسب بالتالي مابنفهمش دورها الحقيقي فى المجال
والتعليم من المصادر الخاصة وان كان بيسهل علينا كتير الا انه فى أحيان كتير بيتجاهل الأسس العلمية للموضوع وبيركز فقط على طريقة أداء المطلوب. أو كما يقال بيركز على الـ technology ويبعد عن الـ science.

فى Cloud Native Base Camp .. قررنا نحل المشكلتين دول .. بنقدم كورسات “متهندسة” صح .. أو متصممة صح
والصح بتاعنا هو دمج الأسس العلمية مع طرق التنفيذ مع تجنب أى نظريات لا داعي لها أو يمكن الأطلاع عليها لاحقاً

الكورسات المتاحة

المجال مش برمجة فقط .. كتابة الكود جزء واحد من متطلبات كتير للمجال .. لكن حتى كتابة الكود لازم تتعلمها بشكل سليم .. وبما ان البداية السليمة هى انك تتعلم تكتب كود سليم .. فبدأنا الدورات بتاعتنا بكورسات زي:

فى كورس Node.js from scratch
هتتعلم لغة برمجة بشكل سليم وعلمي (علمي صح مش غلطة مطبعية) .. وانت بتتعلم اللغة هتتعلم أسس برمجية كتير .. زي ما اتفقنا احنا بنوفق مابين التعليم الأكاديمي ومتطلبات السوق .. يعني مش مجرد هتتعلم ازاى تكتب سطر كود معين .. لا انت لازم تفهم سطر الكود بيعمل ايه من وراك

وبعدين هتتعلم تصميم وتحليل Algorithms .. أزاى تفكر فى الكود قبل ما تكتبه دي حاجة مش متروكة للعشوائية .. دي ليها أسس هنتعلمها مع بعض .. وازاى توصف ال complexity بتاعة أى كود سواء انت اللى كاتبه او حد تاني .. وتتعرف على أشهر الطرق المستخدمة فى التفكير فى كتابة الكود .. ده بيخلي عندك أساس تفكر بيه فى شغلك.

وبعدين تتعلم الـ Data Structures .. أى كود بيتكتب فهو بيتعامل مع Data .. الشكل اللى هنخزن بيه الداتا هيفرق كتير فى أداء الكود .. وبالتالي أختيار ال structure المناسب لكل task ده شىء مهم هتتعلمه معانا.

وبما اننا بنجهز الشباب للتعامل مع الـ cloud native applications فكان لازم يبقى فى كورسات للكلاود.
عندنا حالياً كورس aws devops 90% .. وده كورس موجه فى الأساس لشغل الـ DevOps سواء انت هتبقى DevOps engineer او انت Software Engineer لكن هتقوم بشغل الـ DevOps.
الكورس ده بتاع شغل مش بتاع شهادات.
تخيل نفسك كدة اشتغلت في شركة فيها senior قديم راح شد كرسي وقعد جنبك وقالك تعالى ما أوريك احنا بنشتغل هنا ازاى

ولسه .. فى كورسات تانية هيتم إضافاتها علشان نكمل roadmap كاملة للـ software engineering.
فى كل الكورسات بنخاطب الناس اللى بتتعلم علشان تشتغل .. التعليم علشان الشغل غير التعليم علشان الهواية .. فى فرق كبير .. بالتالي كل اللى انت بتتعلمه عندنا بيؤدي اللى انك لما تنزل شغل تلاقي نفسك جاهز وعارف تشتغل فعلاً مش لسه هتشوف هتتعلم ايه.

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

أراء بعض المشتركين فى المنصة

أهدافنا

كيفية تحقيق الأهداف

مبادئنا

Meet your Mentor

ازاي منصة Cloud Native Base Camp هتحسن تجربتك فى دخول المجال.

أولاً احنا كنا مكانك فى يوم من الأيام .. ف احنا عارفين مشاكلك الحالية بالظبط .. ومش بس كدة .. احنا كمان عارفين المشاكل المستقبلية اللى انت لسه ماتعرفش عنها حاجة .. اللى احنا بنعمله فى Cloud Native Base Camp هو حل للمشاكل الحالية والمستقبلية.

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

من المشاكل اللى كنا بنعاني منها هى ان الـ technology بتتقدم بشكل سطحي .. ازاى تستخدمها .. اما عن الأساس اللى الـ technology مبنية عليه فده بيبقى شىء غامض .. احنا برضه حلينا المشكلة دي .. أى كورس خصوصاً الموجه للـ software engineers بنشرحلك الـ under the hood الخاص بالتكنولوجي.

يعني على سبيل المثال ..  عندنا كورس للـ Node.js والـ JavaScript .. بتطلع منه متعلم لغة JavaScript كويس .. وكويس هنا مش كلام وخلاص .. لأ متعلمها كويس من أساساها .. وبعد ماتخلص هتعرف ان لغة JavaScript مش سهلة كما تبدو من بعيد .. وكمان بتطلع فاهم تتعامل مع الـ Node.js ازاى والأهم هى شغالة ازاى من جوة .. ودي حاجة هتشكرنا عليها بعدين وانت شغال .. انت لا تتخيل كمية المهندسين اللى بيشتغلوا بـ technologies ومش عارفين هى شغالة ازاى من جوة .. انت مش هتبقى من الناس دي .. انت هتبقى من الناس اللى فاهمة الـ under the hood كويس

نيجي بقى للمشكلة الأكبر فى التاريخ الحديث للمجال .. وهى الأساسيات .. او تحديداً جزء من الأساسيات وهو ال Algorithms والـ Data Structures.

احنا موجهين الكورسات للناس اللى هتشتغل فى ال Backend وال DevOps .. الناس اللى هتشتغل Backend انهم يتعلموا المواضيع دي نقطة مافهاش فصال .. مع انك هتلاقى ناس فى المجال بقالها سنين وماتعرفش حاجة عن الموضوعين دول .. على الرغم من انا الناس دي مش وحشين وممكن يكونوا شاطرين كمان .. لكن احنا عايزينك تبقى من الناس المميزة فى المجال .. الناس اللى بتعرف تفكر فى الكود احسن من غيرها .. الواقع بيقول ان مش كل الكود اللى بتكتبه هتفكر فيه وان فى اكواد بناخدها من مصادر معينه ونستعملها زي ماهى .. لكن فهمك لموضوع زي الـ algorithms بيخلى عندك طريقة تفكير أفضل فى كتابة الكود .. وكمان بيخليك تفهم بعض الـ technologies اللى احنا معتمدين عليها بتشتغل ازاى .. كونك فاهم الكلام ده هيخليك مرتاح جداً وانت بتفكر وانت بتختار وانت بتشتغل عموماً .. بعكس ما تكون بتعمل زي ما الناس بتعمل وخلاص.

وانت بتتعلم Algorithms هتظهر معاك مشكلة كبيرة .. ان الموضوع فى رياضيات كتير .. والمصادر الكبيرة والمعروفة اللى بتشرح الموضوع بتتكلم فى Math كتير وبتفترض انك عالم رياضيات أساساً .. ودي المشكلة اللى احنا حلناها فى كورس الـ Algorithms بتاعنا .. احنا هنعلمك فى الكورس الأساس الرياضي لمواضيع معينة بحيث تبقى فاهم الموضوع مش حافظه .. وكمان هنبتعد عن الجزء الخاص بالأثبات الرياضي للنظريات المستخدمة فى الـ Algorithms .. لأن الجزء ده مايخصناش كـ Software Engineers .. بعكس المصادر القديمة المشهورة اللى كانت بتركز على الجزء الرياضي بشكل مبالغ فيه لدرجة ان شباب كتير كان بيقرر ترك موضوع الـ Algorithms بالكامل لهذا السبب .. لكنا زي ما قلت لك المشاكل اللى انت بتقابلها وهتقابلها احنا مرينا بيها .. علشان كدة احنا هنبعدك تماماً عن كل ما ليس له داعي .. وهنشرحلك المهم فقط .. احنا عندنا هدف انك بعد ماتخلص الكورس تقول “الموضوع طلع سهل” .. وعلشان يطلع سهل احنا بذلنا مجهود مضاعف فى اعداد المادة العملية للكورس.

اما عن الـ Data Structures فعلى الرغم من انها اسهل بكتير من الـ Algorithms الا ان كونها مربوطة بفهمك للـ Algorithms فده برضه كان بيخلي شباب كتير تتجاهلها بالتبعية .. لكن اللى احنا عملناه فى كورس الـ DS اننا بدأنا نشرحهالك من أول الميموري بتشتغل ازاى والداتا شكلها ايه وبعدين واحدة واحدة ايه اللى بيخلى كل Data Structure له شخصية مستقلة وبالتالي لما تفهم شخصية كل Structure هتعرف بعدين امتى تستخدمه وامتى ماتستخدمهوش .. وبرضه بعد ما تخلص الكورس هتقول “الموضوع طلع سهل”. وهتشوف مجهود واضح فى الـ presentations الخاصة بشرح كيفية عمل كل Data Structure منهم .. وكمان فى وسط الكلام عن ال DS هتتعلم شوية حاجات بسيطة ليها علاقة بالشغل عموماً.

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

فى مشاكل كتير فى الدخول فى مجال السوفتوير .. احنا عارفينها تقريباً كلها .. وحلينا منها جزء وبنحاول نكمل حل الباقي.

درس عينة من كورس Node.js

درس عينة من كورس Algorithms Analyses And Design

درس عينة من كورس Data Structures Decode

درس عينة من كورس AWS DevOps 90%