شکستن مصاحبه Frontend – انجمن DEV

پس از داشتن شغل در شرکت رویایی خود، اغلب متوجه می شوید که انجام مصاحبه دشوارتر از کار در پروژه های واقعی است. بیایید نگاهی اجمالی به مواردی که هنگام آماده شدن برای مصاحبه توسعه دهندگان frontend باید روی آن قرار دهیم، بیاندازیم.
این سری کاملاً زبان آگنوستیک است به جز چارچوبی که من فقط React را پوشش می دهم. یک دلیل این است که من روی React کار می کنم و در آن کاملاً خوب هستم. دلیل دیگر این است که ما می توانیم با جاوا اسکریپت و ری اکت به رندر سمت کلاینت و سمت سرور دست پیدا کنیم.
ترجیح شخصی است که فریمورکهای دیگر JS مانند Vue یا Angular، زبانهای سمت سرور مانند PHP، Ruby، Python، Java، C# و غیره را انتخاب کنید.
با شکست در آماده شدن، در حال آماده شدن برای شکست هستید. (بنجامین فرانکلین)
انتظار
سطوح مختلف شغلی مستلزم مسئولیت های متفاوت و حداقل صلاحیت ها هستند. شرکتهای مختلف انتظارات متفاوتی برای فیلتر کردن نامزدهایی دارند که به خوبی با فرهنگهایشان مطابقت دارند. در هر شرایطی که باشد، در اینجا 5 عاملی وجود دارد که تأثیر زیادی در جستجوی شغل شما دارد:
-
مهارت فنی: من شدیدا به آن اعتقاد دارم مهارت ها بر تجربیات غلبه می کنند. اگر در کاری که انجام میدهید خوب باشید، تمام اعتماد به نفس این دنیا را خواهید داشت. شما شانس خود را ایجاد خواهید کرد. حتی اگر کسی شما را استخدام نکند می توانید محصولات خود را بسازید.
-
سالها تجربه: بسیاری از شرکت ها نامزدها را بر اساس تعداد سال تجربه فیلتر می کنند! ممکن است کامل نباشد، اما یک مکانیسم ساده در هنگام استخدام در سطح ارشد یا مدیر است! واقعیت این است که بسیاری از ما مهندسان متوسطی هستیم. قابل بحث به نظر می رسد اما حقیقت دارد. شما مهندسان زیادی را خواهید دید که در واقع سال ها تجربه را بدون پیشرفت در شرکت های بزرگ روی هم می گذارند.
-
پروژه های شخصی: هر چیزی مانند پروژه های سرگرمی، پروژه های جانبی یا پروژه های منبع باز حساب می شود. اینها شما را از بقیه متمایز می کند. در اسرع وقت روی اینها سرمایه گذاری کنید، به خصوص فارغ التحصیلان تازه وارد که هنوز تجربه تجاری ندارند.
-
کارفرمایان سابق: چه کسی کاندیدایی را که قبلاً در گوگل یا فیسبوک کار کرده است دوست ندارد (مگر اینکه پول کافی برای پرداخت به شما نداشته باشد)! داشتن لیستی از کارفرمایان معتبر سابق (نسبت به بازار شما) موقعیت مزیت بزرگی را در فرآیند مصاحبه به شما می دهد.
-
مهارت های مصاحبه: رقابت در شرکت های معتبر با هزاران درخواست از مهندسان برتر در سراسر جهان شدید است. برای انتخاب شدن به تجهیزات اضافی مانند مهارت های مصاحبه نیاز دارید.
مهارت فنی
ممکن است داستانهایی را شنیده باشید که مردم بهنحو شانس با نکات و ترفندهایی شغل مناسبی پیدا کردهاند و تنها بر مهارتهای حل مسئله تمرکز میکنند. اما در پایان روز، شما روز به روز با این فناوریها کار خواهید کرد، یک مهندس شایسته همیشه ستاره شمالی شماست.
- مبانی: داشتن درک کامل از علوم کامپیوتر از جمله حل مسئله، الگوهای طراحی، طراحی سیستم، شبکه، پایگاه داده و غیره بسیار مهم است.
چه عاشق ساختارهای داده و الگوریتمها باشید یا از آن متنفر باشید، باید زمان زیادی را برای تمرین صرف کنید. اکثر شرکت ها از آن استفاده می کنند و به این زودی ها تغییر نمی کند.
این روزها بسیاری از توسعه دهندگان فرانت اند خودآموخته هستند که زمانی برای یادگیری اصول علوم کامپیوتر به درستی ندارند. تا زمانی که بتوانید کار را انجام دهید و پول کافی برای زندگی خود به دست آورید، اشکالی ندارد. اما این بدان معنا نیست که از این موضوع بگذرید، منظورم این است که وقتی چیز زیادی در مورد علوم کامپیوتر نمی دانید، خوب نیست که خود را مهندس نرم افزار بنامید.
-
HTML: برداشتن بسیار آسان است، نه چیزهای فانتزی در اینجا. انتظار می رود حداقل عناصر HTML موجود، نحوه کار DOM، HTML معنایی، ذخیره سازی وب و غیره را بداند.
-
CSS: CSS خام مناسب، نحوه عملکرد موتور CSS و طراحی وب سایت واکنش گرا را بیاموزید. شما ممکن است همیشه از فریم ورکهای CSS استفاده کنید، اما یک مهندس فرانتاند نمیداند که با استفاده از CSS خام چیدمان کند.
-
جاوا اسکریپت: دانش کافی از جاوا اسکریپت مورد نیاز است. ساختارهای داده روان و کدگذاری الگوریتم ها در جاوا اسکریپت عالی است. امروزه تقریباً هر کاری را می توانید با این زبان انجام دهید، بنابراین در تلاش زیاد برای آن دریغ نکنید.
-
واکنش نشان دهید: (یا هر چارچوب وب دیگری) فقط یکی را انتخاب کنید و هرگز به عقب نگاه نکنید، بدانید که فقط یکی از آنها خوب خواهد بود. انتخاب دقیقی که شرکت رویایی شما از آن استفاده می کند یک مزیت بزرگ خواهد بود.
-
WebDev: داشتن دانش اولیه از APIهای جاوا اسکریپت استاندارد، XMLHttpRequest و سایر APIهای خاص مرورگر مانند زمان اجرا، ذخیره سازی، اعلان ها، پنجره، سوکت، سیستم فایل و غیره.
بسیاری از فناوریهای وب برای یادگیری وجود دارد که نمیتوانم آنها را در اینجا پوشش دهم. برای فهرست جامع، نقشه راه جلویی را بررسی کنید. هرچه بیشتر بدانید، در مقایسه با سایر نامزدها از مزایای بیشتری برخوردار خواهید بود.
سعی کنید در پیچ و خم فناوری های فرانت اند گم نشوید.
تناسب فرهنگی
شرکت رویایی شما موجودی زنده است که استانداردها و اصولی دارد و هر روز سخت تلاش می کند تا ارزش های اصلی خود را ارائه دهد. هر دوی شما باید مسابقه خوبی داشته باشید، وگرنه ممکن است ماه ها بعد به طرز بدی کار کنید.
-
خودت را بشناس: این خیلی مهم است اما دست کم گرفته شده است. شما باید اصول خود را تعریف کنید. چیزی که واقعاً می خواهید. واقعا کی هستی چه کار کردی. آنچه شما می توانید ارائه دهید.
-
شرکت رویایی خود را بشناسید: این زمانی است که به اینترنت باز احترام می گذارید. این روزها با ظهور انجمن هایی مانند انجمن ها، گروه ها، توییتر و غیره همه چیز بسیار بازتر شده است.
-
داستان گفتن را تمرین کنید تا به تناسب فرهنگی دست یابید: وقتی تطابق خوبی بین یک شرکت و خودتان پیدا کردید، داستان زندگی و تجربیات کاری خود را تنظیم کنید تا تاکید کنید که برای آن شرکت مناسب هستید. این دروغ گفتن نیست، بلکه داستان های خود را به روش های مختلف تعریف می کند.
درخواست شغل
نوشتن یک رزومه خوب با رعایت نکات زیادی در سراسر شبکه زمان زیادی نمی برد.
-
در مورد بازار تحقیق کنید: به اطراف نگاه کنید، همه موقعیت های باز را که می خواهید در یک فایل اکسل اعمال کنید، ردیابی کنید. به آنها اولویت بدهید.
-
رزومه خود را اصلاح کنید: هیچ کس شما را از ارسال یک رزومه به تمام موقعیت های باز منع نمی کند! خیلی ها این کار را می کنند 👹. اما بازنگری در رزومه کمی متناسب با موقعیت (مهندس فرانت اند، مهندس فول استک، مهندس نرم افزار و غیره) توصیه می شود.
-
درخواست کار ارسال کنید: استراتژیهای زیادی در اینجا وجود دارد (یکی در یک زمان، چندگانه در یک زمان، شرکتهای رویایی اول، شرکتهای رویایی آخر، و غیره) و از طریق ارجاعها، استخدامکنندگان یا هیئتهای شغلی. هر کاری میخوای بکن دریافتم که ارسال از طریق ارجاع بهترین گزینه برای تضمین فرصت مصاحبه است.
فرآیند مصاحبه
فرآیند مصاحبه در یک شرکت زمانی شروع می شود که یک ایمیل یا تماس تلفنی از استخدام کننده برای تنظیم مصاحبه ها دریافت می کنید. استخدام کنندگان اغلب تصمیمات شما را در تاریخ و زمان مصاحبه دنبال می کنند، بنابراین در صورت نیاز مقداری زمان بخرید. در زیر 5 مرحله متداول برای موقعیت های فنی وجود دارد:
-
مصاحبه تلفنی با مدیر استخدام: بدون شک راحت ترین. یکی از دلایل این است که مدیر استخدام اغلب حرفه ای و متعارف است، بنابراین می توانید پیش بینی کنید که چه چیزی از شما خواسته می شود و برای آن آماده شوید. دلیل دیگر این است که بیشتر سؤالات سؤالات رفتاری هستند، همه ما فرض می کنیم سؤالات رفتاری ساده تر از سؤالات فنی هستند، درست است؟ 😋 اگر شرکت را به خوبی بشناسید و پاسخ های خود را مطابق با انتظارات هماهنگ کنید، شکست خوردن سخت است.
-
مصاحبه تلفنی با اعضای تیم (1-3): معمولاً از 1 تا 3 مصاحبه فنی تلفنی/ویدیویی با هم تیمی های احتمالی خود خواهید داشت. برخی از شرکت ها بر ساختار داده ها و الگوریتم ها تمرکز می کنند. برخی دیگر فقط بر روی فناوری های ظاهری تمرکز می کنند. بهتر است قبل از این دوره ها از استخدام کنندگان بخواهید که آمادگی بهتری داشته باشند.
-
تکلیف خانه را انجام دهید (گاهی): برخی از شرکت ها ممکن است از شما بخواهند که یک تکلیف را ظرف چند روز تحویل دهید. من در این مرحله به عنوان مصاحبه کننده که تکالیف کاندیداها را بررسی می کردم تجربیاتی داشتم، می توانم به شما بگویم که همیشه بسیار خشن بودم زیرا زمان زیادی برای بررسی کد داشتم. پس لطفا تمام تلاش خود را برای کدنویسی زیبا و تست مناسب انجام دهید. سرمایه گذاری اندکی در طراحی UI/UX عالی خواهد بود. ممکن است برخی افراد در این مرحله به تقلب فکر کنند. نکن! ممکن است بعداً در مصاحبه در محل بسیار خجالت آور شوید.
-
مصاحبه در محل: صرف نظر از اینکه چند مصاحبه انجام دادم، در این مرحله خودم را بسیار عصبی و خسته دیدم. شما به سادگی نمی توانید کمبود دانش خود را پس از مصاحبه های 1 به 1 (2) در طول روز پوشش دهید. شما در کاری که برای آن درخواست می کنید بهتر هستید یا این امر می تواند بعداً به اعتماد به نفس شما آسیب برساند.
-
پیشنهاد مذاکره: عالیه بالاخره به اینجا رسیدی، تقریبا رسیدی، خرابش نکن😅. سعی کنید بین آنچه در مورد بازار، محیط کاری، وضعیت پروژه، پیشرفت شغلی و بسته پاداش می دانید تعادل برقرار کنید.
مصاحبهها در شرکتهای مختلف ممکن است از نظر ترتیب و تعداد مصاحبهها متفاوت باشد، بهتر است همه این 5 نوع را هنگام درخواست همزمان چندگانه آماده کنید.
بهترین شیوه ها
-
کاندیدای حرفه ای باشید. کلیشه ای به نظر می رسد، اما اگر هستید، هرگز آسیب نمی بینید. فارغ التحصیلان تازه وارد ممکن است ندانند چگونه این کار را انجام دهند. مهندسان باتجربه گاهی مغرور هستند و مانند یک 🤬 رفتار می کنند.
-
مصاحبه گر غیرحرفه ای وجود دارد. تعداد زیادی از شرکت ها سمینارهایی برای آموزش کارمندان خود برای انجام مصاحبه حرفه ای ندارند. مهندسان نرمافزار اغلب از آنها خواستهاند تا مصاحبههای فنی را بدون درک دقیقی از آنچه شرکت واقعاً به دنبال آن است، انجام دهند. ممکن است با برخی از مصاحبهکنندگان مواجه شوید که دارای سوگیری فنی هستند، به دنبال شخصی مشابه خود میگردند، سؤالات شخصی میپرسند، نامزدها را تحقیر میکنند و غیره.
-
خوب به اندازه کافی خوب است. من می توانم تضمین کنم که شما هرگز نمی توانید تمام نیازهای فناوری را برای مصاحبه های فنی آینده خود پوشش دهید. هر چه بیشتر یاد بگیرید، بیشتر می دانید که نمی دانید! بهتر است یک ضرب الاجل تعیین کنید و آن را دنبال کنید.
-
در فرآیند استخدام صبور باشید. مصاحبه های تک شات این روزها نادر است مگر اینکه استثنایی باشید و توسط شرکت ها دعوت به کار شوید. بسیاری از ما مصاحبه بسیار طولانی و طاقت فرسا را پشت سر می گذاریم که اگر در هر مرحله از آن شکست بخوریم ممکن است بیهوده باشد. این امر به ویژه در مورد شرکتهای کوچک غیر معتبر زمانی که ما دائماً از خودمان سوال میکنیم که آیا تلاشها نتیجه میدهند یا پیشنهادات بسیار ناامیدکننده میشوند، صدق میکند.
همچنین توجه به این نکته مهم است که اگر بار اول نتیجه ندهد، پایان خط نیست.
استرس نداشته باشید، با جدیت آماده شوید و به خوبی پیش خواهید رفت. آرزو می کنم همه شما که این پست را می خوانید مصاحبه های بسیار موفقی در آینده داشته باشید.