در این مقاله از وبسایت آموزشی راکت به بررسی موضوع تبدیل شدن از یک توسعه دهنده مبتدی و تازهکار به یک توسعه دهنده ارشد میپردازیم.
برنامهنویس بودن یک چیز بسیار عالی است. برای من هیچ چیزی بهتر از فعالیت داشتن در زمینه مهندسی نرمافزار نیست. اینکه بتوانم کدهایی کاربردی را بنویسم، محصولی تولید کنم که توسط میلیاردها نفر استفاده شود، فرصت کار با باهوشترین افراد را داشته باشم و بابت انجام کار مورد علاقهی خود حقوق بگیرم، برایم بسیار رضایت بخش است.
شغل مهندسی نرمافزار معمولاً به چند بخش تقسیم میشود. بیشتر مردم به عنوان یک توسعه دهنده مبتدی شروع به کار میکنند. سپس با گذشت زمان و کسب تجربه به توسعهدهندگان میان رده و ارشد تبدیل میشوند. آیا دنبال کردن این مسیر کار عاقلانهای است؟ چه انتظاری از هر گام شغلی دارید؟ چگونه پیشرفت میکنید؟
من این مسیر را قبلاً پیمودهام و حالا میخواهم تجربیات، افکار و نظرات خود را با شما به اشتراک بگذارم.
بدست آوردن اولین شغل خود
بگذارید این موضوع را با خبرهای خوب شروع کنم:
همهی ما باید از یک جا شروع کنیم. هیچکس به طور مادرزادی یک توسعه دهنده ماهر نیست.
اینکه توسعهدهندگان مبتدی باید از قبل برنامهنویسهایی ماهر باشند، یک تصور اشتباه است و اغلب توسط کسانی استفاده میشود که در آگهی استخدام خود به دنبال توسعهدهندگانی با ۱۰ سال سابقه کار در ۴ فریمورک مختلف جاوا اسکریپت هستند. آنها به دنبال افرادی هستند که تجربه فعالیت در ۳ دیتابیس را داشته باشند. این طرز فکر کاملاً مسخره است. اجازه ندهید این موضوع بر روی شما یا اعتماد به نفستان تاثیر بگذارد.
مطمئناً به عنوان یک توسعه دهنده بدست آوردن اولین شغل کار بسیار آسانی نخواهد بود، اما میتوانید کارهای مورد علاقه خود را انجام دهید.
درخواست کارآموزی دهید
کارآموزی روشی عالی برای بدست آوردن تجربه در کار است. برای خیلی از مردم این دوره مثل سکوی پرتابی به سوی اولین نقش دائمی آنهاست. فقط به دنبال پول نباشید. اینکه شرکتهایی مثل گوگل، فیسبوک و پالانتیر به کارآموزان خود حقوقی ۵ رقمی میدهند، درست است. اما رقابت در آنجا بسیار شدید میباشد. این واقعیت را مد نظر داشته باشید که شرکتهای کوچکتر هم میتوانند مسائل ارزشمندی را به شما یاد دهند. بنابراین خودتان را دست کم نگیرید.
یک کار پارهوقت داشته باشید
یک شغل پارهوقت در دوران دانشگاه میتواند چیز بسیار خوبی باشد؛ شغلی که بتواند مهارتهای کدنویسی شما را تقویت کند. به دنبال آگهیهای استخدام آنلاین و آفلاین بگردید.
یک نمونهکار بسازید
نمونهکارها از پروژههای مختلفی تشکیل شده است. به عنوان مثال شما میتوانید پروژههای جاوا اسکریپتی که روی آنها کار کردهاید را در نمونهکارها لحاظ کنید. سپس میتوانید آن نمونهکار را به کارفرمایان بالقوه نشان دهید. داشتن نمونهکار بسیار خوب است اما اغلب به اندازهای که دیگران میگویند مهم نیست. نمونهکارها نمیتوانند برای شما کار به ارمغان بیاورند، در عوض توانایی به دست آوردن کار به افراد بستگی دارد. انتظار نداشته باشید که چون یک نمونهکار دارید حتماً میتوانید به یک شغل دست پیدا کنید. اگرچه داشتن یکی از آنها میتواند به شما در مصاحبات کاری کمک کند.
در پروژههای متن باز مشارکت داشته باشید
بسیاری از مردم فکر میکنند که از قبل باید توسعهدهندگانی ماهر باشند تا بتوانند در پروژههای متن باز مشارکت داشته باشند.
به یک بوتکمپ بروید
بوت کمپها در دهه گذشته تکامل پیدا کردهاند. آنها روشهایی فشرده را برای آموزش اصول توسعهی نرمافزار به شما ارائه میدهند. آنها مخصوصاً کسانی را هدف قرار میدهند که هیچ سابقهای در علوم کامپیوتر ندارند. این دورهها از ۳ ماه تا ۱ سال متغیر بوده و به طور کلی ارزان نیستند.
توسعه دهنده مبتدی - ببینید و یاد بگیرید
اگر اوضاع وفق مراد پیش رفت و توانستید اولین شغل خود را بدست آورید، به شما تبریک میگویم. اما اگر بیشتر از آنچه که انتظار داشتید طول کشید، نگران نشوید و کمی صبور باشید چون چیزهای خوب به زمان نیاز دارند.
افراد مبتدی فکر میکنند که نوشتن کدی که عمل کند، همان نوشتن کد خوب است. آنها تصور میکنند که همه چیز باید فانتزی و پیچیده باشد چون این همان کاری است که افراد حرفهای انجام میدهند. از شما میخواهم تا اشتباه کنید و از آن اشتباهات درس بگیرید.
در اینجا نکاتی را برای فاز اولیه شغل شما فراهم کردهام.
سوال بپرسید
من نمیتوانم خیلی در این مورد صحبت کنم اما اکثر توسعهدهندگان مبتدی به اندازه کافی سوال نمیپرسند.
الان زمان یادگیری، مشاهده و حفظ کردن است. شما فرصتهای عالیِ تبدیل شدن به یک برنامهنویس بهتر را با سوال نپرسیدن از دست میدهید. وقتی از مردم سوال نمیپرسید، آنها فکر میکنند که به آنها یا کارهایشان علاقه ندارید. یا سوءتفاهم ایجاد میشود و فکر میکنند که شما تصور میکنید از آنها بهتر میدانید. شما از آنها بهتر نمیدانید، اگر هم میدانید نباید این موضوع را به آنها نشان دهید. به آنها احترام بگذارید و هوشمندانه عمل کنید. این فرصت در اختیار شماست تا پایههای آیندهی خود را بنا کنید.
نحوه عملکرد تیمها را مشاهده کنید
احتمالاً در اولین نقش خود به عنوان یک توسعه دهنده مبتدی به یک تیم ملحق خواهید شد. اینکه از همان ابتدا به تنهایی کار کنید کمی غیرعادی است. بنابراین فرصت مشاهده اعضای تیم و نحوه تعامل آنها با یکدیگر را از دست ندهید. آیا توسعهدهندگان مبتدی دیگری هم در تیم وجود دارند؟ آیا توسعهدهندگان ارشدی وجود دارند که بتوانند شما را راهنمایی کنند؟ به نظرتان چه کسی قصد کمک دارد؟ جلسات مهم تیم شما چه زمانی برگزار میشود؟ دیگران از شما و تیم چه انتظاری دارند؟
با یک IDE آشنا شوید
شاید شما هنگام شروع اولین کار خود با یک نوع IDE تجربه کار داشته باشید. با این حال تیمها و پروژهها در فعالیتهای مربوط به توسعه، روند و اصول خاص خودشان را دارند. شاید آنها از VS Code، PHPStorm یا هر چیز دیگری استفاده کنند. شما قصد دارید در سریعترین زمان ممکن با ابزارها آشنا شوید. بفهمید که تیم از چه قوانینی استفاده میکند و میانبرها را تمرین کنید تا بتوانید هنگام کدنویسی موثرتر عمل کنید.
ادامه این مطلب را در مقاله بعدی بخوانید...
دیدگاه و پرسش
در حال دریافت نظرات از سرور، لطفا منتظر بمانید
در حال دریافت نظرات از سرور، لطفا منتظر بمانید