Arash
Arash
خواندن ۱۰ دقیقه·۳ ماه پیش

چالش‌ها و درس‌های مصاحبه با Upwork‌ به عنوان Senior Flutter Developer

Interview with Upwork.com
Interview with Upwork.com

چند وقت پیش با شرکت Upwork برای موقعیت توسعه‌دهنده ارشد فلاتر ۳ مرحله مصاحبه داشتم (همون آپورکی که متأسفانه ایرانی‌ها نمی‌تونن توی سایتش اکانت باز کنن) و این تجربه واقعاً برام جذاب بود. از هر دو منظر کارجو و تیم منابع انسانی و مصاحبه‌کننده‌ها درس‌های جالبی توش داشت و پر از یادگیری بود. امیدوارم که با به اشتراک گذاشتن این تجربه، بتونم به دوستانی که قصد اپلای برای آپورک یا سایر شرکت‌های خارجی رو دارن کمک کنم. همچنین به نظرم آپورک، به عنوان یکی از شرکت‌های بزرگ فناوری در بورس Nasdaq، می‌تونه الگویی برای سایر شرکت‌ها باشه تا مشکلات رایج در بخش منابع انسانی‌شون رو بهتر کنن.

اگه پست قبلی منو در مورد تجربه کار کردن به عنوان فریلنسر توی سایت Freelancer.com یا Upwork.com نخوندید از اینجا میتونید بخونید.

ا Too good to be true ا

داستان از اونجایی شروع شد که پروفایل لینکدین‌ام رو Open to work کردم که باعث میشه تو مدار ریکروترها (Recruiters) قرار بگیری و بقیه کاربران مطلع بشن که شما دنبال تجربه جدیدی هستید. اگر پروفایل‌تون رو اصولی نوشته باشید این شانس رو دارید که بیشتر تو سرچ‌ها دیده بشید. یکی از ریکروترهای آپورک پیام داد و توی ۱ مسیج این موارد رو دقیق ذکر کرده بود:

  • معرفی خودش و شرکت، که واقعاً نیازی به معرفی نداشت :))
  • توضیحات این موقعیت شغلی که قراره به عنوان فلاتر دولوپر چه کار کنم و اپ موبایل فریلنسر و کارفرمای آپورک قراره چه مسیری رو طی کنه
  • اینکه قرار داد بلند مدته و کاملاً ریموت کار میکنن (برای من مهم بود)
  • بازه ساعتی منعطف دارن و بازه ۶ تا ۹ شب به وقت ما همه هستن (خیلی مهم بود)
  • فرهنگ کاری و اینکه به هیچ وجه micromanagement ندارن (خط قرمزم بود)

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

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

نکته جذابش؟ همین که اوکی دادم، پرسیدن چه بازه زمانی فردا برام مناسبه و بسرعت قرار مصاحبه HR‌ ست شد.

آمادگی برای مصاحبه HR

از اونجایی که خیلی مهمه قبل از مصاحبه در مورد شرکت، محصولاتش، فرهنگ کاری‌اش و ... تحقیق کرده باشیم من اینجاها رو چک کردم:
۱. لینکدین آپورک و ریکروتر، پست‌هایی که گذاشتن کامنت و لایک‌هاش، اگه دوست مشترکی باهاشون دارم که بتونه تو تحقیق یا حتی ریفر کمک‌ام کنه، موقعیت‌های شغلی دیگه‌ای که گذاشتن و حتی جاب‌های قبلی
۲. سایت شرکت، Vision و Mission هایی که دارن، سر خط اخبار اخیر و بلاگ‌های سایت‌شون
۳. سایت Glassdoor ، رنج حقوقی که پرداخت میکنن، کامنت‌های بقیه چه اونایی که مصاحبه رفتن چه اونایی که کارمند بودن یا هستن. اطلاعات خیلی کاملی در مورد شرکتا میشه قبل از مصاحبه توش پیدا کرد. حتی نمونه سوال‌هایی که تو مصاحبه پرسیدن
۴. سایت Indeed که کاربردش مثل گلس دوره

مصاحبه منابع انسانی

سوالات مصاحبه HR همان سوالات روال و استانداردی بود که معمولاً همه می‌پرسند. از آنجایی که این سوالات را بارها به انگلیسی تمرین کرده بودم، نه استرس زبان داشتم و نه استرس سوال‌ها. یکی از ابزارهای خوبی که برای آمادگی قبل از مصاحبه استفاده می‌کنم توی لینکدین هست. در صفحه Jobs یک گزینه به نام Interview Prep وجود داره که سوالات استاندارد مصاحبه‌ها را دسته‌بندی کرده. اونجا برای هر سوال یک ویدیوی کوتاه توضیحی و چند جواب نمونه ارائه می‌ده. حتی می‌توانید جواب‌های خودتان به سوالات را در آنجا بنویسید و قبل از مصاحبه مرور کنید. یا حتی پاسخ‌هایتان را برای دیگران ارسال کنید و از آن‌ها فیدبک بگیرید. اگر هم مثل من LinkedIn Premium داشته باشید، توضیحات بیشتری را در اختیار شما قرار می‌ده.

طبق معمول با سوال «از خودت بگو» شروع کردیم، چکارها کردی، چرا از شرکت قبلی اومدی بیرون و ... تا رسید به چقدر با ما آشنایی؟ که میدونستم سوال پر چالشیه. اگر میگفتم هیچی که تاثیر منفی داشت و نشون از عدم علاقه‌ام به اونا بود، اگر هم میگفتم چند سالی تو آپورک کار کردم که ممکن بود بگه لینک اکانت‌ات رو بده و باز به مشکل میخوردیم. جواب منطقی و نزدیک به واقعیت رو بهش گفتم که من تا وقتی ایران بودم بخاطر تحریم‌ها نمی‌تونستم اکانت به اسم خودم داشته باشم، داداشم که ترکیه بود کارها رو می‌گرفت با هم انجام می‌دادیم. لذا کاملاً‌با ساز و کارتون آشنام. ولی الان که اومدم ترکیه می‌تونم اکانت شخصی خودم رو باز کنم.
این سوال از این جهت هم مهم بود چون آپورک حقوق کارمنداش رو از طریق همین اکانت واریز میکنه، مثل وقتی که پروژه گرفتید و از طریق اکانت‌تون برداشت می‌زنید.

در نهایت رسیدیم به اینکه حقوق مد نظرت چقدره.رنجی که قبلش کار می‌کردم حدود ماهی ۲۵۰۰-۳۵۰۰ تا بود ولی با توجه به تحقیقاتی که از گلس‌دور کرده بودم توضیح دادم که با توجه به توانایی‌ها و سوابق‌ام من اگه کشور دیگه‌ای بودم احتمالاً رقم بالایی میخواستم ولی از اونجایی که شما بر اساس محل سکونت پرداخت می‌کنید و منم توی ترکیه‌ام حدود ماهی ۴۵۰۰ یورو برام اوکیه که خودش هم تایید کرد که پرداختی‌مون بیش از اینه و این حداقلی که میگی مورد تاییده و اگه بعداً به کشور دیگه‌ای رفتی دوباره بازنگری می‌کنیم و کلاً هم بازنگری حقوق تو بازه های کمتر از یکسال هم انجام میشه.

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

شفافیت

interview schedule
interview schedule

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

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

آمادگی برای مصاحبه‌های تکنیکال

از مصاحبه HR به صورت کلی می‌دونستم که قراره روی ۲تا اپ‌های خود Upwork کار بشه، یکی اپلیکیشنی که دست فریلنسرهاس و پروژه میگیرن یکی هم دست کارفرماست. هر دو اپ نیتیو نوشته بود و نیازشون این بود که یه سری از ماژول هاش رو فلاتر کنن.

هر ۲ تا اپ رو هم توی Google Play هم توی App Store‌چک کردم. کامنت ها و شکایاتی که کاربرا داشتن. مثلاً اکثر کاربرا از قسمت چت ناراضی بودن یا بعضی جاها لگ داشت و مشکل performance داشت. خودمم هم دانلود کردم و نصب کردم و با اکانتی که از قبل داشتم همه قسمت‌هاشو دقیق بررسی کردم.

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

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

مصاحبه تکنیکال

مصاحبه سخت و نفس‌گیری بود. هم مهارت‌های فنی‌ام رو می‌سنجید هم مهارت‌های مدیریتی و سافت اسکیل‌ هارو. با توضیح کارهایی که قبلاً کردم شروع کردیم و بعد توی هر قسمت عمیق می‌شد. هم از سیستم دیزاین، هم معماری هم ساختار داده ها و ریزترین جزییات کارهایی که قبلاً کرده بودم صحبت کردیم. پیاده سازی Hashmap چطوریه، چطور میشه یه هش فانکشن بهینه نوشت و هر سوالی که بلد بودم سوال بعدی تو همون موضوع عمیق‌تر میشد. اگر هم سوالی رو بلد نبودم و واضح میگفتم بلد نیستم بازهم ازش رد نمی‌شدیم. میگفت خوب حالا بیا با هم بهش فکر کنیم ببینیم چه جوابی میتونیم پیدا کنیم.از انواع بک‌گراند سرویس‌ها توی فلاتر و اندروید، اینکه سیستم مدیریت تسک‌هامون چطوری بوده، اون بازه‌ای که یه تیم کوچیک رو مدیریت می‌کردم چطور پیش میرفتیم، Git flow، پروسه Code Review مون چطوری بوده، یکی دو مثال از کارهای جذابی که کرده بودم و بهشون افتخار می‌کردم رو شرح بدم، اینکه چطور کد نیتیو رو توی فلاتر کال کرده بودیم و پلاگین نوشته بودم و حالا چطور میشه کد فلاتر رو از داخل کد نیتیو صدا زد، lazy loading رو چطور پیاده‌سازی کردم و ... و در نهایت ۵ دقیقه آخر اینکه اگر من سوالی ازشون دارم که تا پرسیدم برق رفت و تا سوییچ کردم روی موبایل فقط در حد خداحافظی فرصت داشتیم.

لایو کدینگ

Me coding when someone is watching
Me coding when someone is watching


برام جالب بود که توی ایمیل دعوت به لایوکدینگ مثل ایمیل‌های قبلی کاملاً توضیح داده بودن قراره چکار کنیم. باید توی اون ۱ ساعت دسکتاپ‌ام رو share کنم و با هر IDE که خودم دوست دارم و هر زبان برنامه‌نویسی که مسلط‌تر هستم اون مسئله‌ای که میگن رو حل کنم و هدف اینه که قدرت حل مسئله من رو بسنجن. در حین کدزنی امکان استفاده از سرچ گوگل و SO و غیره هم فراهمه.

بر عکس مصاحبه HR که کاملاً مسلط بودم، این اولین تجربه‌ای بود که باید لایو کد می‌زدم. با همکارها زیاد pair-programming کرده بودیم ولی اینکه جلوی یه غریبه (اونم کسی که ۱۳ ساله لید فنی شرکته، یعنی ۳سال قبل از اینکه آپورک بوجود بیاد و هنوز اسمش eLance بوده) بخوام بلند بلند به زبان انگلیسی فکر کنم و کد بزنم هم استرس‌زا بود هم تمرکزم برای کد زدن رو می‌گرفت و احتمالاً نیازی نیست یادآور بشم که استرس‌هایی مثل اینکه دوباره یهو ۲ ساعت برق نره، اینترنت قطع نشه، vpn قطع و وصل نشه هم همراه همیشگی ماست که تحت تاثیر جبر جغرافیایی هستیم.

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

جلسه فیدبک

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

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

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


پی‌نوشت۱: قبلاً اینجا نوشتم که چطور می‌تونید حساب ارزی به اسم خودتون توی ترکیه افتتاح کنید.

فریلنسرfreelancerمصاحبه شغلیفلاتر
توسعه دهنده کنجکاو https://www.linkedin.com/in/ar4sh
شاید از این پست‌ها خوشتان بیاید