البته برنامهنویس حرفهای بودن هیچ ربطی به تعداد زبانهایی که بلد هستید نداره. شما میتونید تنها یک زبان بلد باشید، کاملا حرفهای باشید و درآمدتون هم خوب باشه.
یکی از عوامل حرفهای شدن هم همینه که تا کمی از یک زبان رو یاد گرفتید نپرید به یک زبان دیگه، بلکه تمرکز کنید روی یک زبان خاص. بعد از اون هم یادگیری الگوریتمها و مهندسی نرمافزار و غیره هست که وابسته به زبان خاصی نیستند و قسمت سخت کار هم همونجاست، وگرنه یادگیری یک زبان حداکثر ۳ ماه بیشتر ازتون وقت نمیگیره.
منظور من این نبود که یه زبان رو نصفه کاره ول کنی بری سراغ یکی دیگه.برنامه نویس حرفه ایی در چندین زمینه ی مربوط به کارش باید استاد باشه.به نظر شما آشپزی خوبه که یه غذا عالی درست می کنه یا آشپزی که چند تا غذا رو فوق العاده تهیه می کنه؟کار بیشتر برای کدومشون هست؟
احتمالش زیاده که با یادگیریه یه زبان در سطح عالی کار خوب پیدا کنید اما برای اینکه خدای برنامه نویسی بشید ، یعنی کسی که در هیچ زمینه از کاری که درش فعالیت می کنه کم نمیاره ، به چیزی بیشتر از یک زبان احتیاج خواهید داشت.
شاید کاربرد خیلی از زبان ها مشابه باشن اما بهر حال تفاوت هایی هم دارن و هر کدوم در یه موقعیت بهتر از یکی دیگه عمل می کنن برای همین برنامه نویس حرفه خودش رو مسلح به چندین ابزار می کنه تا از هر کدوم در شرایط مناسب استفاده کنه.
لیست زیر حداقل مهارت های لازم برای استخدام در گوگل به عنوان مهندس نرم افزاره.همون طور که می بینید از شخص مهارت بالا در چندین حوزه و زبان برنامه نویسی درخواست شده:
MS or PhD
1 year relevant work experience.
3 years of development and/or test automation experience. Experience in network programming and/or developing/designing large software systems.
Strong programming skills in C, C++, Java and/or Python. Good scripting skills in at lease one common language (Perl, Python, Shell).
Highly proficient in UNIX / Linux / Windows environments. Experience with Flash development and MySQL.
Knowledge of internet technologies, distributed systems, TCP/IP networking, databases, and Linux kerne