آمادگی برای مصاحبه فنی به کمک هکِررَنک

پنج‌شنبه ۰۵ بهمن ۱۳۹۶
۲ دقیقه مطالعه

مدتی پیش در جستجوی یک کار جدید برای برخی از شرکت‌های فناوری درخواست فرستادم. بسیاری از آنها پیش از دعوت به هر نوع مصاحبه برایم یک چالش برنامه‌نویسی در سایت HackerRank ارسال کردند.

HackerRank

این سایت در سال ۲۰۱۲ تاسیس شده و محلی است برای تمرین و آزمودن مهارت‌های حیاتی دانش کامپیوتر مانند الگوریتم‌ها و ساختمان داده‌ها.

چطور شرکت‌ها از هکررنک برای استخدام نیروی کار استفاده می‌کنند؟

روش کار بدینصورت است که لینکی برای فرد ارسال می‌کنند که حاوی تعدادی سوال تئوریک و برنامه‌نویسی است و زمان مشخصی برای انجام آن در نظر گرفته شده است. به محض باز کردن لینک تایمر فعال می‌شود و باید پیش از اتمام وقت کار را انجام داد. ویژگی خوب این وبسایت اینست که برای تمرین هم می‌توان از آن استفاده کرد. اگر هم قصد استخدام دارید می‌توان چالش ساخت و برای داوطلبین ارسال کرد.

مهمترین‌ها:‌ الگوریتم‌ها و ساختمان داده

مسائل در گروه‌های مختلفی طبقه‌بندی شده‌اند. مهمترین آنها الگوریتم‌ها و ساختمان داده هستند. دیدن بخش Cracking the Coding Interview هم بسیار سودمند است (نام یک کتاب است که ویدیوهای مولف‌اش در این بخش نمایش داده می‌شود).

زبان برنامه‌نویسی مهم نیست

مسائل را به زبانهای مختلفی می‌توان حل کرد، مانند پایتون، سی، جاوااسکریپت و حتی کلوژور. توجه داشته باشید که اینجا زبان برنامه‌نویسی اهمیتی ندارد، بلکه مهم قابلیت پیاده‌سازی الگوریتم مناسب برای حل مساله است. بسیاری از سوال‌های وبسایت حالتی داستان‌گونه دارند. هدف اینست که برنامه‌نویس تشخیص بدهد که کدامین الگوریتم مناسب این قصه است. یعنی قصه را کنار بزند و مشکل اصلی را کشف کند و برای حل آن به کمک الگوریتم مناسب برنامه‌ای بنویسد.

درست بودن الگوریتم کافی نیست: تایم‌اوت

هر مساله برنامه‌نویسی شامل یک ورودی و یک خروجی آزمایشی است که موقع نوشتن برنامه از آن برای کنترل صحت برنامه استفاده می‌کنیم. اما سرعت اجرای برنامه نیز مهم است. بسیاری از راه‌حل‌ها هرچند درست باشند در صورتی که در زمان مقرر خروجی را چاپ نکنند به خطا خواهند خورد. وقتی زمان محدود می‌شود اهمیت الگوریتم صحیح دوچندان می‌شود.

کامیونتی و مسابقات

هرچند درخواست چالش برنامه‌نویسی چیز جدیدی نیست اما این سایت نه تنها امکان حل مسائل برنامه‌نویسی را فراهم کرده بلکه کامیونیتی خیلی فعالی هم دارد. خواندن راه‌حل سایرین در نوع خودش خیلی آموزنده است. هر چند وقت یکبار هم در وبسایت مسابقاتی برگزار می‌شود که می‌توان شرکت کرد.

گزارش سال ۲۰۱۸ مهارت‌های برنامه‌سازان

به گفته گردانندگان این وبسایت آنها ۳.۵ میلیون نفر بازدیدکننده داشته‌اند که در نظرسنجی آنها شرکت کرده‌اند. دیدن نتایج نظرسنجی سال ۲۰۱۸ آنها نیز خالی از لطف نیست. مثلا برای من جالب بود که تعداد کسانی که خودشان برنامه‌نویسی را یادگرفته‌اند بیش از کسانی بود که در دانشگاه آن را فراگرفته‌اند.

توصیه می‌کنم حتما از این وبسایت استفاده کنید، انصافا چیز خوبی است!

سورس

دیدگاه‌ها

افشار   ۳۰ بهمن ۱۳۹۶   پاسخ 5a8b322c1921a15723cfc4b6

روش جالبی در استخدام افراد است. ما سال گذشته مشابه همین روش را داشتیم منتها به طور دستی. یعنی یک مسئله تعریف می کردیم و برای کاندیدای مورد نظر ایمیل می کردیم. حتم دارم که استفاده از این سایت خیلی راحت تر و سریع تر خواهد بود.

مهدی   ۰۱ اسفند ۱۳۹۶   پاسخ 5a8c93b792226a2ce2b0c48a

گویا مشابه همین کار رو هم دوستانی در ایران انجام دادند که متاسفانه نام وبسایت خاطرم نیست. ولی بسیار تمیز بود.

افشار   ۳۰ بهمن ۱۳۹۶

روش جالبی در استخدام افراد است. ما سال گذشته مشابه همین روش را داشتیم منتها به طور دستی. یعنی یک مسئله تعریف می کردیم و برای کاندیدای مورد نظر ایمیل می کردیم. حتم دارم که استفاده از این سایت خیلی راحت تر و سریع تر خواهد بود.

شاهین   ۰۲ اسفند ۱۳۹۶   پاسخ 5a8d40934711a6489b6c6056

جالبه، اینجا (انگلستان) هم اکثر شرکت ها از یک آزمون HackerRank برای مرحله ی اول مصاحبه استفاده می کنند.

مهدی   ۰۲ اسفند ۱۳۹۶   پاسخ 5a8dda590b79b70da364021a

بهرحال فیلتر مفیدیه، اگر کسی الفبا رو ندونه دیگه به مراحل بعدی نمی‌رسه. منتها مشکل برخی شرکتها اینه که زیاده‌روی می‌کنند و تستها رو بیهوده سخت می‌کنند. معلومه که از میان هزاران هزار تست می‌شه چیزهایی انتخاب کرد که به عقل جن هم نرسه! یعنی در صورت سخت‌گیری بیهوده کاندیدای مستعد هم ممکنه حذف بشه.

شاهین   ۰۲ اسفند ۱۳۹۶

جالبه، اینجا (انگلستان) هم اکثر شرکت ها از یک آزمون HackerRank برای مرحله ی اول مصاحبه استفاده می کنند.