مصاحبه برای برنامهنویسان و مهندسان نرمافزار معمولا در ارتباط با یکسری تمرینات و آزمونهای کدنویسی است. کسبوکارها تمایل دارند بدانند که شما در شرایط مختلف قادر به انجام چه کارهایی هستید و زمانی که فشار کاری زیاد میشود چه عکسالعملی از خود نشان میدهید. انعطافپذیری و مهارت در حل مسائل در زمان انجام مصاحبه باعث میشود تا شانس شما برای کسب موقعیت شغلی دو چندان شود. اگر در زمان مصاحبه از خود ضعف نشان دهید یا علائمی از عصبی بودن در کار شما مشاهده شود شانس احراز شغل را از دست میدهید.
به عنوان یک برنامهنویس باید در حرفه خود از بهترین ابزار(ها) استفاده کنید تا بتوانید برنامهها را به شکل درستی ایجاد کنید. برنامهنویسی پیشرفته اغلب در تعامل با کتابخانههای (رایگان) حرفهای و سیستمعاملهای حرفهای است. در این میان نباید از نقش محیطهای توسعه یکپارچه همچون ویژوال استودیو برای ساخت برنامههای ویندوزی و سایر برنامهها، اندروید استودیو برای ساخت برنامههای اندرویدی، ویرایشگرهای متنباز و محیطهای توسعه یکپارچهای که برای کار با جاوااسکریپت ارائه شدهاند غافل شوید. همچنین فراموش نکنید که باید با سامانههایی نظیر گیت (Git) و SVN تا حد امکان آشنا باشید. فراموش نکنید کلید موفقیت شما در تعامل با جامعه برنامهنویسان و به ویژه برنامهنویسان متنباز نهفته است.
اینترنت مکانی است که هر زمان در انجام کاری با مشکل روبرو شدید به شما کمک میکند. مهم نیست مشکل شما چه باشد، اینترنت به خوبی اطلاعات لازم را برای حل مشکل در اختیارتان قرار میدهد. انجمنهای برنامهنویسی متنوعی پیش روی شما قرار دارد که با عضویت در آنها ضمن حل مشکل خود یا دیگران، میتوانید سطح مهارتهای خود را ارتقا دهید. سایتهایی همچون استکاورفلو یا codeproject از بهترین منابع آنلاین هستند. فراموش نکنید کار کردن در پروژههای گروهی و مشارکت در پروژههای متنباز به شکل عجیبی مهارتهای شما را افزایش میدهد.
مهم نیست یک برنامهنویس تازهکار یا یک برنامهنویس خبره باشید، کدهای شما همواره باید مورد تحلیل و انتقاد قرار گیرند. بازخوردهای منفی ممکن است باعث دلخوری شما شوند اما بهتر است با این مسئله کنار بیایید، به واسطه آنکه بازخوردهای منفی به شما کمک میکنند یکسری عادتهایی که تصور میکردید درست هستند را به کناری بگذارید. توجه داشته باشید افرادی که منتقد هستند ممکن است لزوما یک برنامهنویس نباشند و دیدگاه آنها حرفهای نباشد. اما فراموش نکنید که ممکن است این افراد نیز نکتهای را به شما انتقال دهند که که از دید شما پنهان مانده باشد. نقدها را قبول کنید و سعی کنید خود را تغییر دهید.
کدنویسی در اصل به واژه کارایی اشاره دارد. اما این حرف به معنای آن نیست که شما همواره کدهای کاملی را مینویسید. گاهی اوقات ضربالجلها (deadline) مهمتر از نوشتن قطعه کدهای زیبا هستند. به عبارت دقیقتر بعضی مواقع باید یکسری چیزها همچون طراحی زیبا را فدای ارائه برنامهای کنید که باید در زمان تعیین شده تحویل داده شده و مهمتر از آن کارایی بالایی داشته باشد. اگر در مدت زمان برنامهنویسی موفق شدید راهکاری را پیدا کنید که به خلق کدهای بهتر منجر میشود هراس به خود راه ندهید و از الگویی استفاده کنید که کارایی بالاتری دارد.
اکثر برنامهنویسان به ویژه آنهایی که تازهکار هستند بدون آنکه پیغامهای خطا را به درستی نگاه کنند بی اعتنا از کنار آنها گذشته و به هیچ عنوان سعی نمیکنند ماهیت و علت بروز خطاها را کالبدشکافی کنند. وقت بیشتری صرف کنید تا آگاه شوید یک خطا چرا به وجود آمده است. این رویکرد در آینده نیز به شما کمک میکند تا علت بروز هر خطایی را خودتان به تنهایی کشف کرده و آنرا برطرف کنید.
برنامهریزی در اصل در ارتباط با جزییات است. پس بهتر است به جزییات کاملا توجه کنید. اینکار به دو دلیل حائز اهمیت است، اول آنکه یک بخش کلیدی در دستیابی به موفقیت است و دوم آنکه در مواجه با کدهای دیگران به شما کمک میکند تا اشکالات یا باگهای احتمالی را به راحتی شناسایی کنید. هیچ چیز بدتر از آن نیست که ساعتها وقت صرف کنید تا یک کاما که باعث بروز مشکل شده است را شناسایی کنید.
برنامهنویسان در ارتباط با یکسری ویژگیها خوشنام نیستند. به واسطه آنکه ساعتها بدون تحرک در مکانی مینشینند که این رویکرد ضمن آنکه به سلامت جسمانی آنها آسیب وارد میکند این ذهنیت را به وجود میآورد که برنامهنویسان افراد کسلکنندهای هستند. بهتر است میان زندگی و کار خود تعادلی برقرار کنید و از سرگرمیهای به دور از کامپیوتر غافل نشوید. سعی کنید با دوستان و خانواده ساعت بیشتری را سپری کنید.
آیا کدهای شما در زمان اجرا با شکست روبرو میشوند؟ آیا وجود یک باگ به اجرای برنامه شما خاتمه میدهد؟ آیا مجبور هستید محصولی که خراب کردهاید را دومرتبه ایجاد کنید؟ مهم نیست، در همه این موارد شما در حال یادگیری و افزایش سطح تجربیات خود هستید. بهترین راه برای بهبود مهارتها یادگیری از طریق اشتباهات است. زمانی که میتوانید از طریق یک نگاه مثبت همه چیز را به دست آورید خود را محصور در افکار منفی نکنید.