Ahmad Raafat
Ahmad Raafat

@ahmadraafat23

25 تغريدة 59 قراءة Jul 06, 2020
بسم الله .. الثريد طويلة شوية بس إن شاء الله تستفادوا هنتكلم عن ال problem solving تعمل اي عشان تستعد اي يأهلني اتكلم في الحتة دي اني عملت انترفيو مع بوكينج وامازون واوبر (مرتين) بس محصلش نصيب والحمدلله وبشكر ربنا علي كدا
طيب بما انك منجحتش جاي تكلمنا عن اي؟ جاي اكلمك عن تجربتي *الشخصية* (ممكن تنفع معاك وممكن لا بس بإذن الله تستفاد) يمكن تفيدك بحاجة بس مش اكتر.. غير ان كان عندي نقط ضعف او الظروف مسعدتنيش ف بعض الانترفيوهات
الشركات الكبيرة بتركز جدا ع ال problem solving زي ما كلنا عارفين واهم حاجة عشان تبقي قوي في النقطة دي هي المداومة الي ما لا نهاية زي ما بنقول كدا "التكرار بيعلم الشطار" ودي اهم حاجة في الموضوع ده التكرار.
المواقع اللي تقدر تساعدك في النقطة دي كتيرة جدا لكن أنا شخصياً كان خير مُعين ليا هو leetcode لانه الحقيقة قوي جدا من وجهة نظري ل ٣ اسباب
١- المسائل مكتوبة بنفس الطريقة اللي بتترميلك في الانترفيو كلمتين واقلب وعيش انت بقي مع المسئلة
٢ - من وجهة نظري هي ال community بتاعه مفيد وقوي جدا وعليه محتوي قوي يساعدك تطور من رؤيتك للمسائل وكمان من طريقة تفكيرك والاهم بتتعلم منه tricks في اللغة اللي انت بتستخدمها (دي اكتر حاجة ممتعة ليا الحقيقة 😁)
٣- هي انه مقسم المسائل حسب الشركات بناءاً علي الفيدباك بتاع الناس اللي عملت انترفيو... هي متاحة لل premium بشكل رئيسي للاسف لك مفيهاش مشكلة يعني لو مش قادر تستخدم غير ال free... هتقدر تلاقي اسئلة كتيرة في جزء ال discus
٣- هي انه مقسم المسائل حسب الشركات بناءاً علي الفيدباك بتاع الناس اللي عملت انترفيو... هي متاحة لل premium بشكل رئيسي للاسف لك مفيهاش مشكلة يعني لو مش قادر تستخدم غير ال free... هتقدر تلاقي اسئلة كتيرة في جزء ال discuss
طيب دلوقتي خلاص انا قررت استخدم leetcode اعمل اي بقي ؟ مينفعش تضغط نفسك بمعني لو انت لسا في البداية وحاولت بقي يلا الاسبوع ده لازم احل ٥٠ مسئلة او اقل حاجة بسيطة للاسف هتفشل لأنك هتلاقي مسائل كتيرة صعبة وهتلاقي نفسك معظم الوقت بتبص ع الاجابات من غير ما تدي نفسك فرصة هنعمل اي طيب!
١- انت لسا هتبدأ يبقي تخش ترتب المسائل بال easy وتبدأ تحل كل يوم مسئلة واحدة بس تقراها كويس تفكر فيها كويس جدا وتحلها مطلعتش من اول مرة حاول تاني وتالت ورابع
٢- تدي لنفسك مُهلة يعني نقول مثلا نص ساعة او ساعة بما اننا لسا ف الاول وتحاول تعصر نفسك ودماغك في الساعة دي من غير ما تبص علي مصدر خارجي ليه علاقة بالمسئلة صدقني مع الوقت هتلاقي نفسك بتطور والوقت بيقل وبتلاقي الحل بمجهود اقل من غير ما تلاحظ اصلا 🙂
٣- بعد ما تحلها لو ليها حل معتمد علي الموقع اقرأه وافهمه كويس وشوف حساب ال complexity زي ما انت عاملها ولا لا
٤- خش علي جزء ال discussion بتاع المسئلة دي وشوف كام حل من اللي واخدين high vote وافهمهم كويس وشوف النقاش في الكومنتات عليه وشوف الكود اصلا مكتوب ازاي واعتقد بنسبة كبير هتتعلم حاجة جديدة اما تعمل كدا غير ان ده هيوسع مداركك وتفكيرك شوية بردو تلقائي من غير ما تاخد بالك. عن تجربة 😁
وحاول تستخدم ورقة وقلم وانت بتحل طيب ليه؟ لانك في الانترفيو هيطلب منك تشرح وتكتب اللي بتعمله علي ورقة او اي online editor فلازم تتعود تكتب برا ال code editor شوية غير انك لو وصلت لمرحلة متقدمة هيتطلب منك تكتب الكود بالحل بتاعك علي ورقة او white board، فحاول علي اد ما تقدر تعمل ده
طيب هل اركز علي حاجة معينة في نوعية الالجوزمز والداتا ستراكتشرز ؟!
الحقيقة النقطة دي متقالتش ليا في بداية طريقي عشان كدا حابب اقولها وبشكل مختلف شوية الا وهو انا هقولك متركزش علي اي والباقي تركز عليه بقي 🙂 بس ممكن تركز علي ال array & strings بنسبة كبيرة شوية 🙂
١.١-ال dp الحقيقة من خلال تجربتي حتي الان مجاليش سؤال عليها وفي حد معرفتي وخبرتي من تجارب ناس تانية صعب شركة تسئلك فيها لانها اصلا مش مقياس لاي حاجة عن ال engineer الا بقي لو حضرتك تنين وحليت المسائل اللي بيدهولك في وقت قياسي.
١.٢- حصلت مع واحد في جوجل انه حل ال ٣ مسائل اللي الناس مجهزينهم اللي هو الرئيسية والاتنين ال backup في حوالي ٣٥ دقيقة فادوله مسئلة dp رخمة رابعة عشان بس يشوف دنيته وميحرجوش نفسهم اووي 😁 .. فمن وجهة نظري المتواضعة اللي ناس ممكن تختلف معايا فيها هي تجاهلها في الوقت الحالي
٢- تاني حاجة الحقيقة ال graphs ... انت بتقول اي يا عم استني بس افهمك متخشش شمال ال graphs مهمة حاجات زي ال bfs or dfs وغيرها لكن فيه حاجات advanced جدا جدا في ال graphs حاول متشغلش بالك بيها اووي يعني زي ال (TSP) مثلا يعني من وجهة نظري محدش هيسئلك فيه.
طيب اعمل اي تاني بقي؟!
اول ما المسائل ال easy تبقي تماام معاك طبعا بتزود عدد المسائل في اليوم وتقلل الوقت.بعد فترة هتلاقيك بقت كويس فيها تبدأ تخش في ال medium والحقيقة بقي هنا متخرجش براه غير اما تبقي باذن الله قوي جدا فيه لان الانترفيو في الغالب بيبقي في المستوي ده فلو بقيت قوي فيه هتحط علي اي انترفيو
هتتبع نفس بلان ال easy ومع الوقت تزود مسائل وتقلل وقت واحدة واحدة هتطور من غير ما تحس باذن الله تعالي.أهم حاجة الكلام اللي فوق ده ملوش لازمة لو وقفت اسبوع مش هقولك شهر اسبوع واحد هيرجعك وراء شهور
طيب انا ليه اتكلمت علي leetcode بس هقولك حاجة كل الانترفيوهات اللي عملتها حتي الان المسائل اللي جاتلي كانت حرفيا منقولة من مسائل علي leetcode 🙂 بجد والله مبهزرش يا اما المسئلة بالحرف يا اما معمول فيها tweak خفيف كدا
طيب بعرف ازاي انها هي هي بس متغير فيها حاجة لاني حليت مسائل كتيرة من النوعية دي فخلاص بقيت بعرفها بسهولة حتي لو شكل المسئلة اتغير ... لما تحللك ٥٠ ولا ١٠٠ مسئلة bfs & dfs مثلا هتلاقيك من اول كام كلمة في المسئلة وشكل ال input بتعرف هتتحل ازاي وبايه 🙂
ده حقيقي ومش هزار فمينفعش تبطل لازم تحل كل يوم حرفيا كل يوم ... ولازم تحول تعود نفسك تحل في وقت قليل وبسرعة كبيرة انا نزلت في انترفيو تانية لاوبر بردو 😅 بسبب اي مش هتصدق والله الفيد باك كان بالنص اني كنت بطئ في ايجاد الحل وكتابته
طيب لو انت شغال fulltime زي العبد الفقير الي الله كدا انا بخصص نص ساعة او ساعة الصبح وزيهم اخر النهار وممكن نصاية او ساعة تالتة في وسط اليوم في البريك ولا حاجة وفي الغالب البريك ده بقرأ عن ال system design. وبكدا هتلاقي نفسك زي الفل والويك ايند تزودهم شوية وتخليهم وراء بعض
وفي الغالب انا بخلي يوم من الويك ايند فري كدا بفضي دماغي واعمل refresh عشان اقدر ارجع اكمل تاني.اسف جدا جدا علي الاطالة لو استفدت بحاجة بسيطة من الكلام ده دعوة بسيطة للعبد لله 🙂 ... واهم حاجة تاني متنساش ربنا في طريقك فهو المُعز والمُذل سبحانه ❤
ربنا يوفقكم ويسمعنا عنكم خير
١.(١.٥)- اضافة هنا بس ان امازون احيانا بتعمل حركة مسائل ال dp دي معرفش اي سر حبهم فيها بس احياناً بيجيبوها للأسف خصوصا في الامتحان اللي في الاول .. بس ممكن تاجلها شوية لحد ما تقوي نفسك في باقي الحاجات الشائعة احسن وبعدين تتدرب عليها :)

جاري تحميل الاقتراحات...