نکات مهم برای آماده شدن یک برنامه‌نویس در مصاحبه‌ شغلی

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

در این پست سوالات و ابهامات مربوط به فرآیند استخدام و مصاحبه توضیح داده شده است.

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

نمونه پورتفولیوهای کاری:

https://medium.freecodecamp.org/15-web-developer-portfolios-to-inspire-you-137fb1743cae

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

آمادگی برای مصاحبه
پژوهش و تحقیق

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

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

مطالعه

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

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

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

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

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

نکات مهم طی انجام مصاحبه
جمع آوری اقلام مورد نیاز

اطمینان حاصل کنید که تمام اقلام مورد نیاز برای مصاحبه را دارید. این شامل رزومه، لپ تاپ (با شارژر) و یک دفترچه و قلم برای یادداشت برداری در طی مصاحبه می‌باشد. اگر پورتفولیو فیزیکی دارید حتما در روز مصاحبه به همراه داشته باشید.

قوانین مصاحبه

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

توانایی‌ها و استعدادها

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

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

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

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

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

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

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

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

پنج کاری که یک طراح تجربه کاربری انجام می‌دهد

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

۱. طرح‌بندی

یکی از اقلامی که همیشه طراحان UX با خودشان به همراه دارند، قلم و دفترچه یادداشتشان می‌باشد. این به این دلیل است که طرح‌بندی یکی از مهم‌ترین مهارت‌هایی است که طراحان UX باید داشته باشند. طراحان UX باید ایده‌های خود را به طور پیوسته طراحی کنند، زیرا این امکان را فراهم می‌کند که سریعتر به ایده‌های بیشتری بپردازند، بدون نیاز به ابزارهای پیشرفته‌تر مانند Sketch یا Illustrator. همچنین این اجازه را به طراحان UX می‌دهد تا ایده‌ها را با دیگران به اشتراک بگذارند.

۲. تحقیق

“یک تجربه کاربری ضعیف از یک تیم طراحی بد آب می‌خورد” – جارد اسپول

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

۳. تهیه پرسونا

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

۴. وایرفریم

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

۵. پروتوتایپ

پروتوتایپ یک مدل نمونه اولیه‌‌ از یک محصول نهایی را نشان می‌دهد. ابزارهای بسیاری مانند InVision یا Principle وجود دارد، که به طراحان UX اجازه می‌دهد نمونه اولیه طرح‌های نهایی خود را ارائه دهند. این به طراحان اجازه می‌دهد جریان کلی محصول مورد نظر را ببینند و چگونه کاربر با آن ارتباط برقرار می‌کند. اغلب طراحان UX، کاربر را با یک پروتوتایپ اختصاص می‌دهند تا ببینند آیا می‌توانند به راحتی کار با آن را انجام دهند. طراحان UX طراحی خود را بسته به اینکه کاربر می‌تواند کاری که با آنان تخصیص داده شده بود را به خوبی انجام دهند. محک می‌زنند.

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

بوت‌کمپ‌های کارادمی

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

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

دوره توسعه رابط کاربری (Front-End)

فضای وب
– آشنایی با فضای وب و اینترنت

– طبقه‌بندی مشاغل در حوزه وب

– آشنایی با ابزارهای توسعه وب

– ساختار پوشه‌ها در پروژه

زبان HTML
– ساختار یک صفحه وب

– لینک کردن استایل‌ها و اسکریپت‌ها

– المن‌ها و اتربیوت‌های HTML

– کار با فرم‌ها و فیلدهای ورود اطلاعات

– المان‌های چند رسانه‌ای

زبان CSS
– آشنایی با CSS

– کار با انتخابگرها: Rule Sets و Rules‌ها

– شروع کار با فونت و تایپوگرافی

– پراپرتی Box Sixing، موقعیت‌یابی و المن‌های Inline vs Block

– طراحی Media Query ،Responsive و Flexbox

جاوا اسکریپت
– آشنایی با زبان جاوا اسکریپت

– کار با انواع Objects، Types، Variables و Arrays

– دستورات و عملگرهای شرطی

– مبحث Loops و Control Flow

– توابع و بیشتر!

دوره پیشرفته توسعه رابط کاربری (React.js)

شروع کار با جاوا اسکریپت
– Variables/Types

– Scopes in JavaScript

– Conditions

– Loop and Iterations

– Functions

– Object Literals

– Prototypes

– Local Storage

– JavaScript Weird Parts

– Object Oriented Programming with JavaScript

– Promises

– Async / Await

– Generator Functions

– JavaScript Best Practices

– Proxies

– Maps and New ES6 Features

پیاده‌سازی یک مثال در دنیای واقعی بدون استفاده از کتابخانه برای جمع‌بندی مباحث مقدماتی
مروری بر jQuery و پیاده‌سازی یک مثال کامل با Handlebars/jQuery/Ajax/Effects/JSON و …
آشنایی با ورژن کنترل سیستم Git به منظور یادگیری فرایند کار تیمی و آپلود پروژه‌ها روی GitHub/GitLab/Bitbucket
آشنایی با امکانات جدید زبان JavaScript/ES5/ES6/Babel/Transpilers
ابزارهای Gulp و Webpack
کار با ES6 Object Oriented
شروع کار با Node و NPM management/package.json/node_modules/Dependency
شروع کار با React و پیاده‌سازی چند اپلیکیشن کوچک به منظور درک عمیق:
– Intro

– SPA and MPA

– Setup Development Environment and Tools

– Webpack Integration

– Babel Introduction

– Functional and Class Component

– State, Props, Proptypes, Component inheritance

– Communication between Components

– HTTP Request with Fetch Api/Axios

– React Router DOM

– React and JavaScript Best Practices

– Code Styles

– Redux Introduction

– Better State Management with Redux

در یک دقیقه با کارادمی آشنا شوید: https://www.aparat.com/v/YBi7V

Create A product first!

Create a product first please!