پیشگفتار: من برنامهنویس را بهجای Programmer و برنامهساز را برابر Developer بکار میبرم. برای بیشتر دانستن، نوشته «در شرکتتان برنامهساز نیاز دارید، نه برنامهنویس» را بخوانید. اما این نوشته هر دو آنها را در بر میگیرد.
اگر دانشجو هستید، بهتر است نوشته دیگر من «پندهایی به دانشجویان کامپیوتر: چشمان خود را باز کنید» را بخوانید.
درآمد: بکارگیری (استخدام) نیرو (برنامهساز یا برنامهنویس) یکی از مهمترین و سختترین کارهای یک شرکت نرمافزاری است. از آنجا که از میان انبوه دانشآموختگان کامپیوتر و فناوری اطلاعات درصد بسیار کمی توانمند هستند، شرکتها باید این کار را روشمند انجام دهند. تا آنجا که من میدانم این کار در اینجا روشمند انجام نمیشود. شرکتهای نوپا که هیچ روشی برای بکارگیری ندارند. شرکتهای بزرگتر نیز روشهایی بدست آمده از «آزمون و خطا» دارند که چندان کارآمد نیست. چندی از آنها هم روشهایی بکار میگیرند که بیشتر مبنای «کلاس گذاشتن» دارد تا شناخت سره از ناسره.
این روشمند نبودن باعث گردیده است که دانشجویان بیانگیزهتر شوند و کمتر روی یادگیری و توانافزایی خود کار کنند.
چرا فرآیند بگارگیری برای شرکتهای نوپا مهمتر است:
یک اینکه شرکت های نوپا منابع محدودتری دارند، بنابراین باید چابک رفتار کنند و کاراتر باشند برای این کار نیز به نیروهای کارآمدتر نیاز دارند.
دو اثر یک نیروی ناکارامد در شرکتهای نوپا هویداتر است. اگر شرکت شما ۱۰۰ نیرو داشته باشد و یکی از آنها توانمندیهای لازم را نداشته باشد، یک درصد از نیروهای شما ناکارامد هستند (گرچه این هم درصد کمی نیست) ولی اگر شما پنج نیرو داشته باشید که یکی از آنها خوب نباشد بیست درصد نیروهای شما خوب نیستند. هرچه شرکتی کوچکتر باشد آسیبپذیرتر میشود.
پس شرکتهای نوپا باید در این کار سختگیرانه و هوشمندانهتر رفتار کنند.
همانگونه که میبینید هرچه شرکت بزرگتر شود یک فرد درصد کمتری از نیروهای آن را شکل میدهد. برخی میگویند حالا که اینگونه است پس حتما شرکتهای بزرگ به فرآیند استخدام اهمیت کمتری میدهند. اینگونه نیست درست برعکس، آنها در این کار سختگیری بیشتری میکنند. امروزه استخدام نیروهای تواناتر نقش حیاتی و رقابتی برای شرکتهای بزرگ دارد. فرایند آنها چندین مرحله دارد و زمانبر است. برای نمونه میتوان به فرآیند پیچیده برای شرکتهایی چون گوگل و مایکروسافت اشاره کرد که میتوان با جستجو در اینترنت در اینباره بیشتر دانست.
برآن نیستم که این نوشته را به درازا بکشانم. در نوشتهای دیگر درباره چگونگی این فرآیند سخن خواهم گفت. اما برای آغاز دو کتاب بسیار خوب را معرفی میکنم:
این کتاب چگونگی بکارگیری نیروها در یک شرکت نرم افزاری را بیان می کند البته تمرکز آن روی مایکروسافت است.
این کتاب نوشته جول اسپالسکی است. پیشتر هم درباره آن نوشتهام. کتاب کوچک و بسیار مفیدی است که حتما باید خوانده شود. سه-چهار روزه میتوان خواندش. باردیگر برای خواندن این کتاب پافشاری میکنم. اینجا میتوانید از محتوای کتاب آگاهی بیشتری بیابید.
چند نکته پایانی
- در آگهی استخدام نکته کلیدی شناخت گروه هدف است که برنامهنویس هستند. باید تا آنجا که میتوانید هدفمندانه آگهی بدهید. آن هم در جاهایی که برنامهنویسان ببینند نه مردم عادی. اگر می خواهید یک نفر را بکار بگیرید باید دستکم ۳۰-۴۰ رزومه دریافت کنید.
- رزومهها را بخوانید. بدون توجه به اینکه کار شما چیست، برای کسانی که در پروژههای آزاد/بازمتن همکاری داشتهاند امتیاز در نظر بگیرید. کُدهای آنها را بخوانید.
- در اینجا یک نمودار جالب برای اینکه به چه چیزهایی باید امتیاز داد وجود دارد. گرچه نمودار کمیک است ولی آگاهی دهنده و سودمند است.
- فرآیند میتواند با یکی-دو آزمون هوش «لو نرفته» آغاز شود.
- بهتر است پیش از مصاحبه برنامهمصاحبه داشته باشید. حدود ۴۵ دقیقه تا یک ساعت را برای مصاحبه در نظر بگیرید.
- در این مدت ۱۰-۱۲ پرسش از ۳-۴ زمینه بپرسید که حتما دو زمینه از آن «ساختمان دادهها» و «طراحی الگوریتمها» باشد. اگر پرسشهای استخدامی شرکتهای بزرگ را ببینید در مییابید که بیشتر آن را همین دو زمینه در بر گرفته است.
- در اینترنت به دنبال فرآیندها و پرسشها جستجو کنید (به انگلیسی.)
اگر می خواهید بار دیگر که مطلبی نوشته شد، آگاه گردید. عضو خوراک (feed) این بلاگ شوید. همچنین می توانید مرا در تویتر دنبال کنید. «فهرست همه نوشتهها»ی من را اینجا ببینید.
مفيد بود
ممنون
سلام . سایت جالبی دارید و زحمت درج مطالب جالبی هم کشیده اید. آرزومند موفقیت شما
کاوه