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

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

HackerRank

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

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

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

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

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

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

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

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

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

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

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

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

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

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