مثل العديد من طلاب علوم الكمبيوتر وعشاق البرمجة، كان العمل في Google حلمًا بالنسبة لي. بعد مشاهدة فيلم "Internship" في عام 2012، وعدت نفسي بأنني سأعمل في تلك البيئة يومًا ما. لذلك، في خريف عام 2019، وهو عامي الأول في الجامعة، تقدمت إلى برنامج Google STEP للمرة الأولى وتلقيت رفضًا بعد بضعة أشهر. لكن ذلك لم يكن مفاجئًا بالنسبة لي حيث درست في مدرسة ثانوية تركز على العلوم الإنسانية ولم يكن لدي الكثير من الخبرة أو المشاريع لأعرضها. لكن هذا الرفض لم يوقفني بل زاد من رغبتي في الحصول على عرض من Google يومًا ما. على مدار الأشهر القليلة التالية، قمت بتعزيز مهاراتي التقنية وبناء بعض المشاريع التقنية. لذلك، في خريف عام 2020، خلال عامي الثاني في الجامعة، نجح طلبي، وحصلت على دعوة لإجراء مقابلة لتدريب Google STEP، واجتزت المقابلة وحصلت على عرض عمل!
![](https://storage.googleapis.com/borderless-so.appspot.com/posts%2Fall-about-google-step-application-and-interview-experience%2Fclb4jvuw30000uap3182g0kiq.webp)
حول تدريب STEP
STEP (برنامج تدريب الطلاب في الهندسة)، والذي كان يُعرف سابقًا باسم التدريب العملي الهندسي، هو تدريب داخلي لمدة 12 أسبوعًا مخصص لطلاب السنة الأولى والثانية في المرحلة الجامعية الذين لديهم شغف بعلوم الكمبيوتر. يركز برنامج التدريب الداخلي على توفير فرص التطوير للطلاب من خلفيات تاريخية غير ممثلة بشكل كافٍ في مجال التكنولوجيا من خلال التدريب التقني والتطوير المهني. خلال الـ 12 أسبوعًا، يتم وضعك ضمن أحد فرق المنتجات في Google ويتم تكليفك بمشروع لإكماله مع متدرب آخر.
الفوائد/ التكلفة/ الراتب
كطالب دولي يدرس في أذربيجان أو في أي مكان آخر، قد تتساءل عن كيفية الانضمام إلى تلك الشركات. الإجابة بسيطة جدًا: تقدم بطلب إليهم! إذا تم اختيارك للتدريب، ستقوم Google برعاية تأشيرتك إلى البلد الذي تهتم به. لذلك لا يهم أين تدرس؛ يمكنك التقدم للتدريب في أي مكتب في الاتحاد الأوروبي أو المملكة المتحدة، وأحيانًا حتى في الولايات المتحدة، وستقوم Google برعاية تأشيرتك للانضمام إلى برامج التدريب الخاصة بهم.
قد تتساءل عما إذا كان هناك أي تعويض أو كم ستكلف المشاركة في هذا التدريب.
لن تدفع أي شيء بل ستحصل على الكثير من المال. ستدفع لك Google راتبًا كل أسبوعين/شهريًا لمدة 12 أسبوعًا. كما سيقدمون لك أموالًا للانتقال لتغطية تكاليف الطيران/الإقامة (وهذا مبلغ كبير، لذلك لن تستخدم حتى راتبك لتغطية نفقات الطيران/المعيشة). وأخيرًا، سيقومون برعاية تأشيرتك وأي رسوم متعلقة بها.
لذلك، لن تخسر أي أموال في هذا التدريب بل ستكتسب الكثير من الخبرة والمال.
كيفية التقديم
يمكنك التقديم للبرنامج من خلال صفحة الوظائف في Google. لزيادة فرصك في لفت انتباه مسؤولي التوظيف، يمكنك أن تطلب من الموظفين الحاليين في Google ترشيحك. ومع ذلك، لم يكن لدي أي ترشيحات وما زلت حصلت على مقابلات. لذا، ركز على جعل سيرتك الذاتية قوية، ويمكنك الحصول على فرص تدريب داخلي بدون ترشيحات.
![](https://storage.googleapis.com/borderless-so.appspot.com/posts%2Fall-about-google-step-application-and-interview-experience%2Fclb4jvwf00001uap36karge09.webp)
عملية التوظيف
المرحلة 0: فحص السيرة الذاتية
المرحلة الأولى هي اجتياز فحص السيرة الذاتية. تحتاج إلى سيرة ذاتية جيدة تتضمن مشروعًا أو مشروعين جيدين على الأقل وبعض المهارات التقنية. من الأفضل أن يكون لديك خبرة سابقة في التدريب كطالب في السنة الثانية، ولكن بالنسبة للطلاب الجدد، يتوقعون بعض المشاريع الشخصية. سيكون من الأفضل إظهار شغفك بعلوم الكمبيوتر والتكنولوجيا. بعض الطرق للقيام بذلك:
المشاركة في مسابقات البرمجة، مثل Kick Start. لست بحاجة للفوز بالمركز الأول. هذا يظهر أن البرمجة هي شيء تستمتع به وأنك على استعداد لتحسين مهاراتك باستمرار.
المشاركة في هاكاثون: هناك العديد من الهاكاثونات التي تزدهر كل عام في باكو. شارك فيها ووثق العمل الذي تقوم به هناك. إذا فزت، رائع! إذا لم تفز، سيكون لديك مشروع جاهز لوضعه في سيرتك الذاتية ومناقشته خلال مقابلاتك.
المشاريع الشخصية: حرفياً بأي تقنية تهتم بها. قم ببناء صفحة ويب، أو صنع لعبة، أو كتابة تطبيق ويب. أي شيء يظهر أنك تطور مهاراتك باستمرار خارج الفصل الدراسي. استضفها على GitHub وأضف الروابط إلى سيرتك الذاتية. يمكن أن يحدث هذا فرقًا كبيرًا.
بناء المجتمع: انضم إلى نوادي علوم الكمبيوتر المحلية، مثل ACM، أو قم بالتدريس في جامعتك أو بعض مراكز التدريس. سيظهر هذا أنك إنسان حقيقي ولست فقط جالسًا خلف شاشة طوال اليوم. يمكن أن تساعد الهوايات أو الأنشطة غير المتعلقة بالتكنولوجيا أيضًا في إظهار كيف تساهم في المجتمع كفرد، وهو أمر يقدره أصحاب العمل كثيرًا.
المساهمة في المصادر المفتوحة: على الرغم من أنه قد يبدو مخيفًا في البداية، إلا أن المساهمة في مشاريع المصادر المفتوحة سهلة للغاية، بفضل منصات مثل GitHub. يمكن أن تكون تجربة مجزية للغاية. يمكنك البدء بإضافة بعض الترجمات إلى الوثائق. أضف وثائق باللغة الأذربيجانية إلى منتجات المصادر المفتوحة المستخدمة بشكل متكرر، مما سيساعدك على اكتساب خبرة في المصادر المفتوحة وأيضًا مساعدة مجتمع التكنولوجيا الأذربيجاني. ثم يمكنك الانتقال ببطء إلى مواصلة التحسينات التقنية للمكتبات/اللغات التي تستخدمها غالبًا. يمكنك البحث عن الاقتراحات المقترحة لتلك المكتبات/اللغات ومعرفة ما إذا كان بإمكانك تنفيذها. أو ابحث عن مجال ترغب في تحسينه واقترح اقتراحًا.
تضمنت سيرتي الذاتية الخبرات التالية:
مدرس أقران للبرمجة في جامعتي
متدرب كمهندس Full Stack في شركة صغيرة
منظم هاكاثون (بناء المجتمع هنا!) لجامعتي
بعض مشاريع الهاكاثون
عمل محلل بيانات قمت به لأحد أساتذتي
كما ترى، لم تكن سيرتي الذاتية تحتوي على خبرات مذهلة. لم أكن طفلًا في أولمبياد المعلوماتية أو شاركت في مسابقات البرمجة. لكنني حاولت الحصول على أي خبرة تقنية يمكنني الحصول عليها في جامعتي والعثور على تدريبات في شركات صغيرة لبناء الخبرة للتقدم لاحقًا للشركات الكبيرة.
المرحلة 1: جولتان من المقابلات الهاتفية الخوارزمية
إذا تم اختيار سيرتك الذاتية، ستتم دعوتك إلى مقابلتين تقنيتين مدة كل منهما 45 دقيقة تعتمد على هياكل البيانات والخوارزميات. عادة ما يمنحونك من 2 إلى 4 أسابيع للتحضير وجدولة مقابلاتك. يتم إجراء هذه المقابلات في نفس اليوم بشكل متتالي.
خلال المقابلات، ستقوم بحل العديد من المشكلات المتعلقة بالخوارزميات وهياكل البيانات، مثل تلك الموجودة على leetcode. دون الخوض في التفاصيل، حيث لا يُسمح لنا بمناقشة المشكلات الفعلية التي نُعطى إياها، سأقول إن المقابلة مصممة بشكل جيد لمستوى الطلاب بعد عام أو عامين من دراسة علوم الكمبيوتر على المستوى الجامعي. ولكن الأمر يعتمد عليك في وضع الممارسة والتفاني لإتقان المقابلات باستخدام الموارد المذكورة أعلاه. للتحضير للمقابلات، استخدمت المصادر التالية:
قراءة كتاب "Cracking the Coding Interview" لفهم هيكل المقابلات، وما تتوقعه الشركات التقنية الكبيرة مقابل الشركات الناشئة من المقابلات، والمواضيع التي تحتاج إلى تغطيتها.
ابدأ بمراجعة أساسيات الخوارزميات وهياكل البيانات. يمكنك مشاهدة دورات مثل MIT 6.006 أو مقاطع فيديو على YouTube، مثل "Data Structures Easy to Advanced Course - Full Tutorial from a Google Engineer".
تعلم أيضًا عن تعقيد الوقت والمساحة! سيسألونك عن تعقيد الكود الخاص بك وكيف يمكنك تحسينه محتملًا في كل مقابلة.
اقرأ مقال "14 Patterns to Ace Any Coding Interview Question" لتعلم الأنماط الشائعة لحل الأسئلة الخوارزمية.
توجه إلى قناة Exponent على YouTube وشاهد بعض المقابلات الخوارزمية التجريبية!
(مدفوع) أحد أفضل الدورات التي استخدمتها للتحضير هي "Grokking the Coding Interview: Patterns for Coding Questions" على educative.io، والتي تتعمق في أنماط حل المشكلات الخوارزمية وتقدم حلولًا نموذجية للمشكلات الشائعة.
اذهب إلى leetcode وابدأ سلسلة "Top Interview Questions" الخاصة بهم. تغطي هذه السلسلة المواضيع المستخدمة بشكل أساسي في المقابلات وتقدم أمثلة على المشكلات لكل موضوع. حاول حل 50-100 (أو أي عدد تحتاجه حتى تشعر بالراحة معها) مشكلة متوسطة قبل مقابلاتك.
كما قلت، بالإضافة إلى التحضير التقني، هناك العديد من الأشياء التي يمكنك القيام بها قبل وأثناء المقابلة لزيادة فرصك.
تدرب على حل المشكلات بصوت عالٍ: من المهم ليس فقط حل المشكلة، ولكن أيضًا التواصل حول كيفية حلها. يمكن أن يكون من الصعب التفكير والتحدث باللغة الإنجليزية أثناء حل هذه المشكلات، لذا تدرب على عملية تفكيرك قدر الإمكان. يمكنك استخدام مواقع مثل Pram أو الحصول على صديق والتدرب مع بعضكما البعض. يمكن أن يساعدك خريجو جامعتك كثيرًا في هذا الأمر، خاصة إذا كانوا قد مروا بمقابلات ولديهم خبرة في العملية.
تحدث مع من يجري المقابلة معك: يمكنك حل المشكلة بشكل مثالي. ولكن إذا لم تتمكن من التواصل مع من يجري المقابلة معك وتوصيل عملية تفكيرك إليهم، فستفشل في المقابلة. يختبرك من يجري المقابلة على أكثر من مجرد قدرتك على حل مشكلة عشوائية في 45 دقيقة. لذا، قم ببناء محادثة مع من يجري المقابلة معك حتى إذا كنت على المسار الخاطئ، يمكنهم مساعدتك للعودة إلى الحل الصحيح. إنها ليست مقابلة في اتجاه واحد؛ أنتم تتواصلون معًا!
المرحلة 2: مطابقة الفريق/المضيف!
إذا وصلت إلى هذه المرحلة، فلديك بالفعل عرض! الخطوة الأخيرة هي تعيينك لفريق مضيف ومشروع. تقوم بذلك من خلال إجراء مقابلات صغيرة غير تقنية مع فرق مختلفة وفقًا لتفضيلاتك. في حين أنه لا يزال من الممكن تقنيًا عدم مطابقتك مع فريق، إلا أن هذا نادر ويعتمد كثيرًا عليك ومدى انفتاحك على تجربة الفرق التي قد لم تسمع عنها أو لم تكن مهتمًا بها في البداية.
تمت مطابقتي في مقابلتي الأولى مع فريق Google Ads حيث كان مشروعي السابق والمجموعة التقنية للتدريب متوافقة بشكل جيد مع مجموعة الفريق. أقترح أن تكون منفتحًا على أي فريق وألا تحد من خياراتك وفرصك.
كلمات أخيرة
بشكل عام، هذه عملية طويلة من التحضير والمقابلة، ولكنها تستحق العناء! أنصح كل طالب في السنة الأولى والثانية بالتقدم لتدريب STEP حيث سيفتح العديد من الفرص لفترات التدريب والتوظيف المستقبلية. إذا أديت بشكل جيد خلال فترة التدريب، ستحصل على عرض للعودة إلى تدريب هندسة البرمجيات، وبعد ذلك التدريب يمكنك الحصول على عرض عمل بدوام كامل مع Google. لذا، لا تتردد في التقدم للتدريب عندما يكون مفتوحًا، حيث يستغرق التقديم بضع دقائق فقط لإرسال سيرتك الذاتية :)