در این مقاله از وبسایت آموزشی راکت به ادامه بررسی موضوع تبدیل شدن از یک توسعه دهنده مبتدی و تازهکار به یک توسعه دهنده ارشد میپردازیم.
یاد بگیرید که چگونه باید کد تمیز و قابل نگهداری بنویسید
وقتی شروع به کدنویسی میکنید، هیچکس از همان ابتدا انتظار ندارد که کدهای شما بی نقص باشند. اصلا یک کد بی نقص چیست؟ کاری که شما باید انجام دهید این است که کدی را بنویسید که دیگران بتوانند به آسانی آن را درک کنند. شما باید توابع را کوتاه نگه داشته و نام متغیرها را به درستی انتخاب کنید. برای تحت تاثیر قرار دادن دیگران کارهای فانتزی انجام ندهید و همیشه به یاد داشته باشید که شما تنها کسی نیستید که بر روی کدبیس کار میکنید.
با نحوه کارکرد نرمافزار کنترل نسخه آشنا شوید
بیشتر شرکتها از Git به عنوان سیستم اصلی کنترل نسخه خود استفاده میکنند. شما باید از همان ابتدا مفاهیم اساسی را بیاموزید زیرا این یک مهارت حیاتی در سایر کارهای شماست. اگر در حال کار کردن بر روی یک شاخه اشتباه هستید یا در حال هدایت کردن یک کد تست نشده به سمت خط تولید میباشید، به شما پیشنهاد میکنم که هرگز این کار را انجام ندهید.
به دنبال یک مربی بگردید
خیلی از شرکتها برنامههای مشاورهای را به وجود آوردهاند و در آن توسعهدهندگان مبتدی را با افراد با تجربهتر آشنا میکند. اما اگر این مورد در شرکت شما وجود ندارد، باید سعی کنید از تیم خودتان یک شخص را پیدا کنید. اگر نمیتوانید این کار را انجام دهید، بهتر است به پلتفرمهایی مثل Codementor.io نگاهی بیاندازید.
قدرت بازبینی کد را در آغوش بگیرید
بازبینی کد در بسیاری از سازمانها برای کاهش خطا و جلوگیری از اشکالات اجباری است. برای یک توسعه دهنده تازهکار این موضوع فرصتی عالی برای بهتر شدن است.
از دو جهت به این موضوع نگاه کنید: از یک طرف میخواهید تا آنجا که امکان دارد کدهای دیگران را بررسی کرده و چیزهایی که نمیدانید را بپرسید. از طرف دیگر هم دیگران میتوانند کدهای شما را دیده و از آن انتقاد کنند. شما باید از این نظرات به درستی استفاده کرده و آنها را به دل نگیرید چون این فرصتی عالی جهت بهبود مهارتهای کدنویسی شماست.
در صورت امکان به طور دونفره برنامهنویسی کنید
برنامهنویسی دونفره هم یک روش مهم برای انتقال دانش است. اگرچه ممکن است کار کردن با شخصی دیگر بر روی یک سیستم کمی ترسناک به نظر برسد اما من واقعاً این کار را به شما توصیه میکنم. از اینکه کیبورد را در اختیار بگیرید نترسید. نباید از اشتباه کردن واهمه داشته باشید. شما میتوانید از شخص مقابل نکات و موضوعات بسیاری را یاد بگیرید.
بعضی از مردم توصیه میکنند که برای تقویت مهارتها و یادگیری چیزهای جدید باید پروژههای جانبی را بر عهده گرفت. اما من به شما توصیه میکنم که این کار را بعداً در حرفهی خود انجام دهید. اگر تازه شروع کرده باشید، برای یادگرفتن چیزهای بسیار زیادی که وجود دارد به پروژههای جانبی نیاز ندارید.
توسعه دهنده (میان رده) – همه چیز در مورد کد نیست
پس از ۲ سال فعالیت در عرصه مهندسی نرمافزار، باید خودتان را یک توسعه دهنده بنامید. این همان جایگاهی است که خیلی از مردم در طول زندگی حرفهای خود در آن ثابت باقی میمانند و این موضوع هیچ مشکلی هم ندارد.
توجه کنید که این تماماً در مورد کدهایی نیست که شما مینویسید. این مسئله در مورد توانایی کار و مشارکت در یک تیم، درک روند کار و روند توسعه نرمافزار نیز میباشد. شما باید الگوهای متداول طراحی را درک کرده و از اصول مربوط به آن پیروی کنید.
شما باید با IDEها و نرمافزارهای کنترل نسخه آشنایی داشته باشید. باید بتوانید به تنهایی کدهای خوبی را نوشته و کارهای چالش برانگیز بیشتری را بر عهده بگیرید. اینکه بر روی کارهای روزمره کار کنید، باگها را برطرف کنید یا در کدبیس با سایر اعضا مشارکت داشته باشید هیچگونه ایرادی ندارد. در واقع این همان کاری است که اکثر مردم به طور روزانه انجام میدهند. توسعهدهندگان بسیاری در دنیا وجود دارند که عاشق شغل خود هستند و بابت زحمات خود حقوق خوبی را نیز دریافت میکنند.
حالا زمان خوبی برای امتحان کردن سایر زبانها یا فریمورکها خواهد بود. میتوانید یک پروژه جانبی را به تنهایی شروع کنید یا به پروژههای متن باز نگاهی بیاندازید.
توسعه دهنده ارشد – زمان مربیگری
خیلی از مردم فکر میکنند که یک توسعه دهنده ارشد کسی است که در کسری از زمان و بدون هیچ خطایی کدهای بی نقصی را مینویسد. آنها تصور میکنند که توسعهدهندگان ارشد یک ارتش تک نفره هستند یا فکر میکنند که چنین توسعهدهندگانی میتوانند به تنهایی برنامههای وب عالی را خلق کرده و به طور روزانه نرمافزارهایی را تحویل مشتریان دهند. متاسفانه بسیاری از شرکتها هنوز به دنبال چنین موجودات خیالی هستند. اما در حقیقت آنها باید به دنبال چیز دیگری باشند.
به عنوان یک توسعه دهنده با تجربه، باید بتوانید نیمه پر لیوان را ببینید. شما باید به طور دائم علت برخی از چیزها را بپرسید.
چرا ما از یک زبان خاص استفاده میکنیم؟ ذخیره اطلاعات چیست؟ ساختار خاص کدام است؟
توسعه دهندگان ارشد نمیگویند که زبان x از زبان y بهتر است. در عوض آنها این موضوع را درک میکنند که برای حل یک مشکل خاص، استفاده از زبان x مناسبتر خواهد بود. آنها به عملکرد اهمیت میدهند. آنها کدهایی را مینویسند که قابل نگهداری است و با این کار مسیر را برای سایر توسعهدهندگان هموارتر میکنند. گاهی اوقات آنها کدها را به شکلی آماتور مینویسند تا دیگران بتوانند بهتر آن را درک کنند یا با این کار سبب میشوند تا دیگران عملکرد بهتری را از خودشان به نمایش بگذارند.
مهمترین چیزی که یک توسعه دهنده ارشد میتواند تحویل دهد، توسعهدهندگان ارشد بیشتری به جامعه است.
یکی از مهمترین ویژگیهای یک توسعه دهنده ارشد، مهارتهای اجتماعی قوی میباشد. بیشتر پروژهها به دلیل ارتباطات ضعیف با شکست مواجه میشوند. این وظیفه شماست تا از توسعهدهندگان کم تجربهتر مراقبت کنید. مربی آنها شوید. شما باید توانایی صحبت با بالادستان و مدیران را نیز داشته باشید و مسائل را به شکلی توضیح دهید که افرادی با دانش کمتر هم بتوانند آن را بفهمند. باید بازیکنی باشید که برای موفقیت در درازمدت تلاش میکند.
توسعهدهندگان ارشد میدانند که کار کردن در مهندسی نرمافزار تنها در مورد سرهم کردن کامپیوترها برای اجرا شدن بیتها و بایتها نیست. این موضوع همچنین در مورد ارتباط برقرار کردن با انسانها نیز میباشد.
سخنان پایانی
هیچ روش عینی برای تعیین سطح توسعهدهندگان وجود ندارد. عناوین معمولاً به عنوان راهنمایی جهت تعیین حقوق استفاده میشوند. این موارد به شرکتی که در آن کار میکنید نیز بستگی دارد. تجربه واقعی از مقام و عنوانی که دارید حاصل نمیشود، بلکه محصول درسهایی است که از شکستها و باختهای خود گرفتهاید.
در ابتدای کار خود صبور باشید. الگوهای اساسی مهندسی نرمافزار را بیاموزید و روی مهارتهای فنی خود کار کنید. تفاوت جاوا و جاوا اسکریپت را بفهمید. وقتی تجربه کسب کردید، سعی کنید بهتر به موضوعات اطراف خود نگاه کنید. مهارتهای نرم خود را بهبود ببخشید و به دیگران کمک کنید. فردی جسور و روشن فکر باشید. از روی احساس تصمیم نگیرید، در عوض گزینهای را انتخاب کنید که بهترین نتیجه را برای حل مشکلات پیچیده خواهد داشت.
در آخر باید به شما توصیه کنم که نباید خیلی درگیر عناوین شوید. یک توسعه دهنده ارشد واقعی به این عنوان هیچ اهمیتی نمیدهد. آنها به اثرات خود بر مردم، محصولات و شرکتها اهمیت میدهند. همهی ما دارای نقاط قوت و ضعف هستیم. ما میجنگیم. شکست میخوریم. زمین میخوریم. اما برای ادامه دادن به کارهای مورد علاقهی خود دوباره روی پاهای خود میایستیم.
دیدگاه و پرسش
در حال دریافت نظرات از سرور، لطفا منتظر بمانید
در حال دریافت نظرات از سرور، لطفا منتظر بمانید