ممکن است بخواهید به عنوان یک توسعهدهنده مهارتهای خود را به طور مداوم ارتقا دهید. اما اینکه چگونه میتوانید واقعا پیشرفت کنید، یک سوال پیچیده است که باید به دنبال پاسخ آن باشید.
مهندسان عادی موجود در دنیای نرمافزار با ایده مهندسان 10x رابطه چندان نزدیکی ندارند. مهندسان 10x به مهندسانی گفته میشود که ظاهرا در مقایسه با همکاران خود ده برابر عملکرد بیشتری دارند. اما چگونه کسی اینقدر با استعداد میشود؟
آنها صرفا از نظر دانش برنامهنویسی برتر نیستند. بلکه با استانداردهایی نظیر خلاقیت، سرعت، نبوغ طراحی و توانایی حل مسئله سنجیده میشوند.
در اینجا چهار مرحله عملی وجود دارد که من خودم از آنها استفاده کردهام یا به دیگران برای موفقیت در بهبود مهارتهایشان پیشنهاد دادهام.
اگر تازه با برنامهنویسی آشنا شدهاید، فکر میکنم این اولین مقالهای است که باید بخوانید.
تا جای ممکن آموزش دهید و بنویسید
آنچه بسیاری از افراد آن را دست کم میگیرند نویسندگی است که به شما این امکان را میدهد تا تأثیرگذارتر باشید. من میبینم که بسیاری از مهندسان این مهارت را نادیده میگیرند.
اگر به مهارت کدنویسی خود افتخار میکنید، حتما باید به همان اندازه به هنر نوشتن نیز افتخار کنید. نوشتن برای مهندسان یک مهارت بسیار دست کم گرفته شده است.
بدانید این خود شما هستید که بیشترین مسئولیت را در قبال مهارتها و پیشرفتتان بر عهده دارید و تبدیل شدن به یک توسعهدهنده بهتر تا حد زیادی به خودتان بستگی دارد. این وظیفه شماست که نقاط ضعف خود را بهبود بخشیده و مهارت خود را تقویت کنید. توسعهدهنده بهتر بودن یک روند مداوم است که هرگز متوقف نمیشود و نوشتن هم به شما کمک میکند تا بیشتر بیاموزید.
با نوشتن از محدوده امن خود خارج میشوید، همچنین با موضوعات جدیدی برای بحث آشنا خواهید شد. با این کار گفتمانی را شروع کرده و وقتی اشتباه میکنید، مردم بسیار خوشحال میشوند که شما را تصحیح کرده و بازخورد خود را ارائه دهند.
بهترین راه برای تبدیل شدن به یک مهندس بهتر این است که آنچه را میدانید به 10 نفر آموزش دهید و آنها را در مهارتهای توسعه تقویت کنید.
سعی کنید تخصص خود را در بستر آنلاین ارائه داده و آنچه را که میدانید به صورت اپن سورس قرار دهید. نوشتار فنی به عنوان سرمایهای قابل حمل عمل میکند تا کار را به مشاغل دیگر منتقل کنید و عمق و وسعت دانش خود را نشان دهید. نوشتن نه تنها مهارتهای شما را به نمایش میگذارد، بلکه آنها را نیز توسعه میدهد.
زیاد مطالعه کنید
مارک تواین میگوید کسی که میتواند کتابهای خوب بخواند اما تصمیم نمیگیرد این کار را انجام دهد، هیچ برتری نسبت به کسی که نمیتواند کتاب بخواند ندارد.
خواندن، یک ابزار قدرتمند است. سعی کنید پایگاههای کد بزرگ را مرور کنید، کتابهای فنی مطالعه کنید، کد همکاران خود را بخوانید و مستندات رسمی را بررسی نمایید.
درخشانترین ذهنها را در فضای مجازی پیدا کنید، مهندسانی با چندین دهه تجربه و افرادی که مورد علاقه شما هستند.
به عنوان یک چالش اولیه، watch preferences خود را در پایگاه کدی که بیشتر با آن آشنا هستید، تغییر دهید (یک ریپازیتوری کاری یا متن باز). سپس هر تغییری که به master/main وارد میشود را مرور کرده و بخوانید.
اگر کدی وجود دارد که نمیفهمید یا نمیتوانید با آن کار کنید، از شخصی که آن را انجام داده است سوال کنید. سعی کنید از همه یاد بگیرید. این به برنامهنویس کمک میکند تا بفهمد کد چه کاری انجام میدهد و به شما امکان میدهد تا اطلاعات بیشتری در مورد تغییرات اکوسیستمی که در آن کار میکنید داشته باشید.
روی پروژههای مختلف کار کنید و در OSS مشارکت داشته باشید
ما به همان چیزی خواهیم رسید که مکررا انجام میدهیم. بنابراین پیشرفت و ترقی یک عمل نیست، بلکه یک عادت است.
یکی از بزرگترین جهشها در مهارت و اعتماد به نفس من زمانی رخ داد که اولین برنامه مهم خود را (شبیهسازی الگوریتمهای مسیریابی) طراحی کردم. من با دایکسترا (Djikstra) شروع کردم و *A را نیز انجام دادم.
این مرا مجبور کرد به موارد زیر دست پیدا کنم:
- برنامهریزی از ابتدا تا انتها
- ارزیابی و نیازسنجی
- مسئولیت پذیری
- کار بر روی APIهای جدید که با آنها ناآشنا بودم
- آشنایی با معماریهای نوین
- در نظر گرفتن نحوه پیادهسازی الگوهای کدنویسی تمیز
اگر مطمئن نیستید از کجا شروع کنید، مشکلی نیست. در این لینک تعدادی API عمومی وجود دارد که میتوانید با آنها کار کنید یا حتی از برخی پروژهها در اینجا ایدههایی بگیرید.
اگر هم وب سایت شخصی ندارید و میخواهید یکی را برای خود طراحی کنید، میتوانید از این سایت بهره ببرید.
انتشار پروژه شخصی من به تنهایی یک تجربه آموزشی شگفت انگیز بود. شما در نهایت کل SDLC را از ابتدا تا انتها یاد میگیرید و خلاءهای موجود در دانش خود را پر میکنید.
برای من به شخصه استقرار و ساختارهای CI بود که اطلاعات زیادی در مورد آنها نداشتم (خودم از Netlify استفاده میکنم). و این تمرین موارد زیر را برایم به همراه داشت:
- نحوه تست پروژه
- چگونگی انتشار آن
- استفاده از بیلدهای خودکار
- کار با هاست و اتصال به دامنه
از این طریق شروع به خودآموزی به شیوهای کاملا عملی میکنید، زیرا هدف نهایی را در نظر دارید (دسترسی آنلاین به هر چیزی خواهید داشت).
کار بر روی چنین پروژههایی برای هر شخص متفاوت است. چند ماه روی پروژههای متن باز کار کنید و بعد ببینید چقدر رشد میکنید. اگر شروع به تعامل با افرادی از کشورهای مختلف نکنید که هر یک نظرات خود را دارند و شما را نمیشناسند، در این صورت نمیتوانید از اشتباهات خود درس بگیرید.
همچنین از مزایای دیگری نیز برخوردار خواهید بود. مثلا میتوانید یک فرد باهوش را که با او ارتباط خوبی دارید، شناسایی کنید و از دانش ارزشمند او که بر اساس چندین سال کدنویسی به دست آمده استفاده نمایید.
اگر میدانید این کار برای شما مفید است - یعنی داشتن کسی که با او در ارتباط باشید و در مورد پیشرفت فناوری خود صحبت کنید - میتوانید برای گرفتن راهنمایی با یک منتور مشورت کنید.
حتی لازم نیست یک برنامه کامل را کدنویسی کنید، بلکه فقط روی چیزی کار کنید که از آن لذت میبرید. سعی کنید مشکلات کد را خودتان حل کنید. یا حتی یک کامپایلر و یک زبان بنویسید. برای این منظور میتوانید حدودا 400 ایده را در اینجا دنبال کنید.
بزرگترین جهش در رشد من زمانی رخ داد که چند پروژه کوچک نوشتم و سعی داشتم آنها را اجرا کنم. انجام پروژههای زیاد (که از آن لذت میبردم) مرا مجبور به سازگاری کرد تا از نظر زمانی کارآمدتر باشم و باعث شد سریعتر کدنویسی کنم.
حتما ورزش کنید و خواب کافی داشته باشید
این برای هر شخصی شرمآور است که بدون داشتن تجربه زیبایی و استحکام بدن خود پیر شود. ورزش به طور مستقیم و غیرمستقیم به حافظه و تفکر شما نیز کمک میکند. مزایای مستقیم ورزش کردن بسیار زیاد است، اما مواردی را در زیر عنوان میکنم:
- به بدن شما اجازه میدهد مقاومت به انسولین و التهاب را کاهش دهد.
- مواد شیمیایی را در مغز شما تحریک میکند تا بر سلامت سلولهای مغز تأثیر بگذارد.
- رشد عروق خونی جدید در مغز را تسریع میکند.
- میزان و دوام سلولهای جدید مغز را افزایش میدهد.
به طور غیرمستقیم هم میتواند به شما در بهبود خلق و خو و کاهش استرس و اضطراب کمک کند.
همچنین مطالعات نشان داده که بخش جلوی پیشانی (وضوح تفکر) و بخش گیجگاهی داخلی (حافظه) در افرادی که ورزش میکنند در مقایسه با افرادی که ورزش نمیکنند حجم بیشتری دارند.
همانطور که مراقبت از سلامت روان اهمیت دارد، باید از سلامت جسم خود نیز مراقبت کنید. چرا که با بالا رفتن سن ضریب هوشی کاهش مییابد و یک نظریه وجود دارد: اگر از لحاظ قلبی و عروقی سالم بمانیم، میزان اکسیژن مغز ما دیرتر کاهش مییابد.
جمعبندی
آخرین توصیه من که همه این موارد را به هم مرتبط میکند این است که سعی کنید خود را به طور مداوم به چالش بکشید.
در حین کار معمولا یک تمرکز خاصی وجود دارد که به آن flow (جریان) گفته میشود. این زمانی اتفاق میافتد که احساس کنید به طور کامل انرژی دارید و بسیار متمرکز هستید. در این مورد میتوانید مقاله نکاتی برای یافتن جریان عملیات خلاقیت را مطالعه کنید.
اگر کار خیلی دشواری را آغاز کنید، به دلیل احساس فشار بیش از حد آن را تکمیل نمیکنید و ناتمام باقی میملند. و اگر کار خیلی راحتی هم شروع کنید، به دلیل احساس خستگی آن را تکمیل نخواهید کرد.
بنابراین باید تمام تلاش خود را برای ایجاد تعادل در کارتان داشته باشید تا شما را در یادگیری چیزهای جدید به چالش بکشد و باعث پیشرفت مهارتهایتان شود.
انجام این کار در ابتدا دشوار به نظر میرسد، اما با آموزش دیدن و تمرین و تکرار همه چیز عادی خواهد شد.
دیدگاه و پرسش
در حال دریافت نظرات از سرور، لطفا منتظر بمانید
در حال دریافت نظرات از سرور، لطفا منتظر بمانید