هیچ نیازی نیست در همان ابتدا (حتی دیرتر) بزرگ شوید. حتی اگر به 100 نفر از بهترین افراد دسترسی دارید، باز هم اشتباه است که همه آنها را یک جا استخدام کنید. هیچ راهی برای هماهنگ کردن سریع آن همه آدم در یک فرهنگ جا افتاده نیست. دردسرهای آموزشی، برخوردهای شخصی و خطا در برقراری ارتباط خواهید داشت و هر کسی به راه خودش میرود و ....
بنابراین -اصلاً- استخدام نکنید. استخدام نکنید، به جای آن به راههای دیگر بیاندیشید. آیا کاری که روی دوش شما مانده واقعاً کار مهمی است؟ اگر آن را انجام ندهید اتفاق خاصی میافتد؟ آیا میتوانید آن را با یک قسمت از نرمافزار یا تغییر دادن روشها انجام دهید؟
زمانی Jack Welch بنیانگذار و مدیر عامل ge مجبور شد یک نفر را اخراج کند، ولی به سرعت به جای او فرد دیگری را استخدام نکرد. میخواست ببیند که چقدر ge میتواند بدون آن فرد و بدون آن شغل سپری کند. ما هرگز نمیگوییم که برای آزمودن این فرضیه افراد را اخراج کنید ولی فکر میکنیم که Jack چیز جالبی را کشف کرد: شما به آن تعداد افراد که فکر میکنید، نیاز ندارید.
اگر هیچ راه دیگری نبود، بعد سراغ استخدام بروید. ولی باید دقیقاً بدانید که چه شخصی را بگیرید، چگونه کار را به او معرفی کنید و بدانید که او قرار است مرهم کدام درد باشد.
قانون بروکس
اضافه کردن افراد به یک پروژه تأخیردار، باعث تأخیر بیشتر پروژه میشود.
Fred Brooks
برنامهنویسی و مرثیه موتزارت
یک برنامهنویس خوب که بر روی یک وظیفه کار میکند هیچ هزینه سربار هماهنگی و ارتباطی ندارد. وقتی پنج برنامهنویس روی همان وظیفه کار میکنند باید با هم هماهنگ و در ارتباط باشند و این زمان زیادی میبرد ... مشکل اصلی استفاده از تعداد زیادی برنامهنویس متوسط به جای چند برنامهنویس خوب، این است که آنها هر چقدر هم که زیاد کار کنند، نمیتوانند چیزی را به همان خوبی که برنامهنویسان بزرگ تولید میکنند، تولید کنند. پنج تا Antonio Salieris نمیتوانند مرثیه موتزارت را تولید کنند. هرگز. حتی اگر صد سال کار کنند.
Joel Spolsky، برنامهنویس، Fog Creek Software (نقل از Hitting the High Notes)
نگاه کردن به مقام، سوابق کاری، نمونههای کد، یا کارهای قبلی یک چیز است و کار کردن با افراد چیز دیگر. هر زمان که ممکن است، اعضای بالقوه جدید گروه را بیازمایید.
ما قبل از این که کسی را استخدام کنیم، به آنها یک برنامه کوچک میدهیم تا در ابتدا با آن کار کنند. میبینیم که چطور پروژه را اداره میکنند، چگونه ارتباط برقرار میکنند و .... کار کردن با افراد در حین طراحی صفحات یا کدنویسی، بصیرت و بینش فراوانی به شما میدهد. به سرعت درمییابید که آیا فرد صحیحی مقابل شما است یا نه.
زمانبندی برای این قبیل کارها سخت است ولی حتی اگر کار 20 یا 40 ساعت طول میکشد، بودن آن بهتر از نبودنش است و مناسب بودن یا نبودن فرد آشکار میشود. اگر فرد مناسبی نبود، هر دو طرف با این آزمون، خود را از خطر و دردسر زیادی نجات میدهند.
با کوچکتر شروع کنید
آزمون کوچکی برای شروع کار آماده کنید. یک دفعه با همه کارها آغاز نکنید. به (دستیار مجازی) جدید خود یک یا دو تا پروژه آزمایشی بدهید تا روی آنها کار کند و ببینید که فعل و انفعالات چطور رخ می دهند. در آغاز پوشاندن مشکلات بالقوه با عینک خوشبینی آسان است. مشخص کنید که این یک اجرای آزمایشی است.
Suzanne Falter-Barns، نویسنده و متخصص خلاقیت (نقل از How To Find And Keep The Perfect VA)
روش معمول برای استخدام نیروهای فنی که بر مبنای میزان تحصیلات، سابق و غیره است، به دلایل زیادی چرند و احمقانه است. آیا واقعاً مهم است که فرد مدرک یا gpa خود را از کجا گرفته است؟ آیا واقعاً میتوانید به سوابق یا معرفینامهها اعتماد کنید؟
کد باز هدیهای ارزشمند برای افرادی است که به دنبال استخدام نیروهای فنی هستند. در کد باز میتوانید فعالیتهای افراد را -چه خوب و چه بد- در طول زمان پیگیری کنید. معنی این حرف این است که شما میتوانید به جای حرف بر مبنای عملکرد افراد داوری کنید. میتوانید بر مبنای چیزهایی که واقعاً مهماند تصمیمگیری کنید:
خیلی از برنامهنویسها میتوانند درباره چیزهای مهم بسیار صحبت کنند، ولی زمانی که باید کارهای مهم انجام دهند، غیب میشوند. با کد باز، شما میتوانید ریز و درشت ویژگیها، مهارتها و تواناییهای برنامهنویسی یک نفر را بفهمید.
برنامهنویسی فقط تصمیمگیری است. فراوان و فراوان تصمیمگیری. تصمیمها به کمک برتریهای فرهنگی، ارزشها و آرمانها گرفته میشوند. به تصمیمهای فرد داوطلب در کدنویسی، آزمون و بحثهای گروهی بنگرید و ببینید که آیا از نظر فرهنگی با شما سازگار هستند یا نه. اگر در این مرحله هیچ سازگاریای پیدا نکردید، هر تصمیمی که بگیرید برایتان دردسرساز خواهد شد.
همه میپذیرند که حضور در فعالیتهای کد باز، حداقل نیاز به علاقه و اشتیاق دارد. اگر این گونه نیست چرا این فرد حاضر است بدون هیچ دستمزدی ساعتها پشت رایانه بنشیند؟ اغلب میزان حضور در فعالیتهای کد باز نشان میدهد که فرد داوطلب چقدر به برنامهنویسی اهمیت میدهد.
اگر فرد نتواند چیزی را به انجام برساند، تمام زیرکی، تمایلات فرهنگی مناسب و اشتیاق و علاقه روی هم به اندازه یک نرمافزار خوب ارزش ندارند. متأسفانه خیلی از برنامهنویسان نمی توانند. پس دنبال تعصب برای اتمام کار بگردید. کسی را استخدام کنید که بتواند دل به دریا بزند و همه کارهای لازم را برای به ثمر رساندن کار انجام دهد.
کار کردن طولانی مدت با یک نفر، در اضطراب و آرامش، بالا و پایین، شخصیت واقعی آن افراد را به شما نشان میدهد. اگر یک نفر در روشها و مهارت اجتماعی کمبود داشت، آنها را پالایش کنید.
وقتی صحبت از برنامهنویس است، ما فقط کسانی را استخدام میکنیم که آنها را از طریق کد باز میشناسیم. فکر میکنیم که هر انجام هر کاری غیر از این، مسؤلیتناپذیری است. ما Jamis را به خاطر پیگیری عرضهها و فعالیت در گروه Ruby استخدام کردیم. او در تمام موارد گفته شده، برتری داشت. هیچ نیازی نبود به عوامل ثانویه تکیه کنیم وقتی که میتوانستیم بر اساس آن چیزی که واقعاً مهم است داوری کنیم: کیفیت کارش.
نگران این نباشید که فعالیتهای فوق برنامه تمرکز و علاقه را از کارهای روزمره آنها میگیرد. شبیه آن جملهی کلیشهای است که میگوید: اگر میخواهید کاری انجام شود، از مشغولترین فردی که میشناسید کار را بخواهید. Jamis و David دو تن از پرکارترین افراد در Rails هستند و همچنان مدیریت فنی 37Signals با آنها است. افرادی که به برنامهنویسی علاقه دارند کارها را به انجام میرسانند، افرادی هستند که شما در گروه خود به آنها نیاز دارید.
اشتیاق کد باز
بیشترین خواسته شما از یک استخدام جدید، علاقه به کارهایی است که انجام داده است. هیچ چیزی برای نشان دادن آن، بهتر از دنبال کردن پروژههای کد باز نیست.
Jarkko Laine، برنامهنویس (نقل از Reduce the risk, hire from open source)
ما هرگز فردی که معمار اطلاعات است استخدام نمیکنیم. بیش از حد تخصصی است. در گروهی کوچکی مثل ما، استخدام افرادی با چنین دایره تخصصی محدود، هیچ خاصیتی ندارد.
گروههای کوچک به افرادی نیاز دارند که بتوانند در هر لحظه رنگ تازهای بگیرند. به طراحانی نیاز دارید که بتوانند بنویسند. به برنامهنویسانی نیاز دارید که از طراحی سر در آورند. هر کسی باید ذهنیتی از معماری اطلاعات (حالا به هر معنیای که باشد) داشته باشد. همه باید بتوانند با مشتریان رابطه برقرار کنند.
و هر کسی باید بخواهد و بتواند که خودرو را در جاده براند. همیشه به یاد داشته باشید که گروههای کوچک اغلب باید جهت خود را تغییر دهند و این کار را به سرعت انجام دهند. شما به کسی نیاز دارید که بر خلاف افراد به گل مانده که فقط میتوانند یک کار را انجام دهند، بتواند خودش را تطبیق داده، بیاموزد و حرکت کند.
شور و اشتیاق، ویژگیای است که نمیتوانید آن را وانمود کنید. وقتی زمان استخدام فرا میرسد، فکر نکنید که به یک دانای اسرار یا فوق ستاره فنی نیاز دارید. اغلب اوقات آنها آدمهای مغرور و متکبری بیش نیستند. یک کارمند شاد ولی در حد متوسط بهتر از یک آدم حرفهای ولی خشک و بد خُلق است. فردی را پیدا کنید که مشتاق و علاقهمند باشد. کسی که مطمئن باشید وقتی تنها است، کارها را انجام میدهد. کسی که رنج شرکتی بزرگتر و کندتر را کشیده و محیطهای جدید را دوست دارد. کسی که علاقهمند به ساختن چیزی باشد که شما میسازید. کسی که از چیزهایی که شما بدتان میآید، بدش بیاید. کسی که از کار کردن با شما به هیجان میآید.
امتیاز بیشتر برای پرسیدن سؤال
ببینید که آیا فردی که میخواهید استخدام کنید سؤالهای زیادی درباره پروژه شما میپرسد یا نه. برنامهنویسان مشتاق و علاقهمند میخواهند مشکل را بفهمند. به علاوه سریعاً راهحلهای بالقوه و ارتقاهایی را پیشنهاد میکنند که خود منجر به سؤالات بیشتری میشود. توضیح دادن این سؤالات نشان میدهد که پروژه شما میتواند به هزاران روش متفاوت اجرا شود و این برای صراحتاً نهایی کردن تصور شما از نحوه کار برنامه وبیتان ضروری است. همچنان که در جزئیات فرو روید به این احساس میرسید که آیا این فرد از لحاظ فرهنگی با شما سازگار است یا خیر.
Erick Stephen، از BuildV1.com
اگر شما در تلاش هستید برای شغلی خاص، از بین چند نفر یکی را انتخاب کنید، همیشه بهترین نویسنده را استخدام کنید. مهم نیست که آن فرد طراح، برنامهنویس، بازاریاب یا فروشنده یا هر چیز دیگری است، مهارت نویسندگی همه چیز را جبران میکند.
مفید و مختصر نوشتن و ویرایش کردن منجر به کد، طراحی، رایانامه، پیامهای فوری و ... مفید و مختصر میشود. علت این است که نویسنده خوب بودن بیش از توانایی نوشتن است. نویسندگان خوب میدانند که چطور ارتباط برقرار کنند. فهم چیزها را آسان میکنند. میتوانند پا جای پای دیگران بگذارند. میدانند چه چیزی را حذف کنند. افکارشان شفاف و واضح است و آنها همان کیفیتی هستند که شما میخواهید.
یک ذهن سازمان یافته
مهارتهای خوب نویسندگی نشانهای از یک ذهن سازمان یافته است که میتواند اطلاعات و بحثها را به صورتی سامانمند مرتب کند و به سایر افراد در درک چیزهای مختلف کمک کند. این موضوع به کد، ارتباطات شخصی، پیام فوری (برای همکاریهای راه دور) و حتی موارد مبهمی مانند حرفهایگری و واقعیت نیز سرایت میکند.
Dustin J. Mitchell، برنامهنویس (از Signal vs. Noise)
واضح نوشتن منجر به واضح فکر کردن میشود
واضح نوشتن منجر به واضح فکر کردن میشود. نمیدانید که چی چیزی میدانید، تا وقتی که سعی نکنید آن را بیان کنید. خوب نوشتن قسمتی از شخصیت است. به جای این که کاری را که برای خودت آسان است انجام دهی، کاری را که برای خوانندهات آسان است انجام بده.
Michael A. Covington، استاد علوم کامپیوتر در دانشگاه جورجیا (نقل از How to Write More Clearly, Think More Clearly, and Learn Complex Material More Easily)