مهارت‌های مورد نیاز برای تبدیل شدن به یک مهندس پایتون در سال ۲۰۲۳

منتشر شده در medium به تاریخ ۱۲ مارچ ۲۰۲۳
لینک منبع Skills Required to Become a Python Engineer in 2023

چرا باید به حرف من گوش کنید؟

سلام! ممکن است از خود بپرسید: «چرا باید به این مقاله درباره مهندس پایتون شدن گوش دهم؟» خب بگذارید خودم را معرفی کنم. من یک مهندس ۲۱ ساله پایتون هستم و ۳ سال سابقه کار دارم. من در کالج علوم کامپیوتر خواندم و حتی به‌عنوان معمار راه‌حل‌های AWS گواهینامه گرفتم. اما چیزی که واقعاً من را متمایز می‌کند این است که اولین شغلم به‌عنوان مهندس پایتون را در ۱۷ سالگی پیدا کردم! از آن زمان، من توانستم به بسیاری از دوستانم کمک کنم تا مسیر خودشان را در فناوری اطلاعات شروع کنند. بنابراین اگر به‌دنبال فردی هستید که زمانی جای شما بوده و تجربه پشتیبانی از آن را داشته باشد، به جای درستی آمده‌اید. بیایید به مهارت‌های ضروری پایتون که برای موفقیت در سال ۲۰۲۳ به آن نیاز دارید بپردازیم!

شرایط شغلی مهندس پایتون تازه‌کار

برخی از الزامات رایجی که ممکن است در یک آگهی شغلی مشاهده کنید در اینجا آمده است:

  • لیسانس در رشته کامپیوتر یا رشته مرتبط
  • ۱-۲ سال تجربه کار با پایتون و کتابخانه‌های مرتبط (مانند دی‌جنگو یا فلاسک)
  • آشنایی با فناوری‌های توسعه وب (HTML، CSS، جاوا اسکریپت و ...)
  • آشنایی با پایگاه‌های داده (SQL، MySQL، MongoDBو ...)
  • آشنایی با بهترین شیوه‌های توسعه نرم افزار (کنترل نسخه، تست، اشکال‌زدایی و غیره)
  • مهارت حل مسئله و تفکر انتقادی قوی
  • توانایی کار مشترک در یک محیط تیمی
  • مهارت‌های ارتباط نوشتاری و کلامی عالی

بیایید این مبحث را به بخش‌ها و موارد ضروری تقسیم کنیم.

دانش عمیق از پایتون

خب، البته، شما باید پایتون را بشناسید. اما سوال اینجاست که دانش شما تا چه حد عمیق باید باشد؟ پیش‌تر، دانستن اصول اولیه و شاید یک چارچوب کافی بود، اما همه‌چیز تغییر کرده است. با وضعیت فعلی صنعت فناوری اطلاعات و بحران کلی، شناخت واقعی پایتون در داخل و خارج ضروری است.

به‌عنوان مثال، آیا می‌توانید به سوالاتی مانند زیر جواب دهید:

  • اول، Python Dicts بر روی چه ساختار داده‌ای ساخته شده است؟
  • چگونه مسائل Diamond Problem در پایتون حل می‌‌شود؟
  • اگر چندین دکوراتور در یک عملکرد داشته باشید، به چه ترتیبی اجرا می‌شوند؟

شما باید پایتون را مانند کف دست خود بشناسید.

اما این فقط نوشتن کد نیست، بلکه نوشتن کد بهینه‌شده است. شما باید در list and dict comprehensions، دکوراتورها، مولدها و تمامی مفهوم آن حرفه‌ای باشید. و بیایید الگوریتم‌ها را فراموش نکنیم - فقط برخی از مشکلات Leetcodeرا حل کنید تا مهارت‌های خود را تقویت کنید.

پایگاه‌های داده

من می‌دانم که نادیده گرفتن این موضوع آسان است، اما اجازه دهید به شما بگویم، می‌تواند تفاوت بزرگی در حرفه شما به‌عنوان یک مهندس پایتون تازه‌کار ایجاد کند. این فقط حرف من نیست - بسیاری از مهندسان با‌تجربه به‌دنبال جوانانی هستند که دانش کاملی از SQL و Psqlداشته باشند. این مانند یک محرک خوب برای آنها است. شما می‌خواهید تحت تعقیب باشید درست است؟

من متوجه شدم، یادگیری پایگاه‌های داده ممکن است کمی خسته‌کننده به‌نظر برسد، اما به من اعتماد کنید، ارزشش را دارد. درک SQLو Psql در مرحله اول شما را از سایر نوجوانان متمایز می‌کند و مصاحبه‌کنندگان را تحت‌تاثیر قرار می‌دهد. به‌علاوه، مزیت بزرگی در نوشتن برنامه‌های بهینه‌سازی زمان و مکان به شما می‌دهد.

مطمئن شوید که به Joins تسلط دارید، یاد بگیرید که چگونه ایندکس‌ها کار می‌کنند، و تمرین کنید، تمرین کنید و تمرین کنید. ممکن است این هیجان‌انگیزترین چیز در جهان نباشد، اما برای رشد شغلی شما به‌عنوان یک مهندس پایتون بسیار مهم است.

جنگو، DRF، FastAPI

خب، بیایید در مورد چارچوب‌ها صحبت کنیم. اول از همه، باید بگویم که فلاسک در این فهرست قرار نگرفت. اگر کنجکاو هستید که چرا، به شما پیشنهاد می‌کنم چند دقیقه وقت بگذارید و این مقاله را بخوانید:

چرا FastAPI آینده توسعه وب پایتون است؟

اکنون، بیایید در مورد جنگو صحبت کنیم – این محبوب‌ترین فریم‌ورک وب در زمینه پایتون است و با برخی از بزرگ‌ترین نام‌ها مانند Laravelو Yii2 رقابت می‌کند. بنابراین، شما باید آن را مانند کف دست خود بشناسید. چند پروژه شخصی و خودمحور روی آن بسازید، و واقعاً در ORM جنگو غرق شوید. و در‌حالی‌که در آن هستید، چرا یک REST API با استفاده از Django DRF ایجاد نکنید؟

یکی از مواردی که واقعاً باید در نظر داشته باشید کیفیت کدهایی است که می‌نویسید. مطمئن شوید که به اصول SOLID و DRYپایبند هستید و در مورد برنامه‌نویسی OOP عمیقاً یاد بگیرید. فراموش نکنید که کد خود را در GitHub قرار دهید و مهارت‌های خود را به کارفرمایان بالقوه نشان دهید. به من اعتماد کنید، در دراز‌مدت نتیجه خواهد داد.

من شخصاً از طرفداران بزرگ FastAPIهستم و فکر می‌کنم این ابزار عالی برای شروع حرفه ITشما است. کاربرپسند، برق‌آسا و کار کردن با آن ساده است.

اگر هنوز آن را امتحان نکرده‌اید، به‌شدت توصیه می‌کنم آن را امتحان کنید. من حاضرم شرط ببندم که شما هم مثل من عاشقش خواهید شد. به‌علاوه، داشتن تجربه کار با فناوری‌های جدیدتر مانند FastAPIهمیشه یک امتیاز است – کارفرمایان واقعاً از این نوع دانش قدردانی می‌کنند و می‌تواند به شما در فرآیند استخدام کمک کند.

پس ادامه دهید، یادگیری FastAPI را شروع کنید و ببینید این همه هیاهو برای چیست. به من اعتماد کنید پشیمان نمی‌شوید.

زبان‌های HTML، CSS، JS

در اینجا این پسشنهاد من است در بحث فرانت‌اند: اگر قصد دارید یک مهندس پایتون باشید، توصیه نمی‌کنم زمان زیادی را برای توسعه فرانت‌اند صرف کنید. مطمئناً، گذراندن یک دوره آموزشی کوچک در مورد HTML، CSS و JSمی‌تواند مفید باشد، اما زیاد درگیر آن نشوید.

می‌پرسید چرا؟ خب، حقیقت این است که به‌عنوان یک مهندس متمرکز بر بک‌اند، اطلاعات زیادی برای پوشش دادن در حال حاضر خواهید داشت. تلاش برای تطبیق در توسعه frontendعلاوه‌بر آن می‌تواند طاقت‌فرسا باشد و ممکن است بهترین استفاده از زمان شما نباشد.

بنابراین توصیه من این است که بر روی آنچه که برای مسیر شغلی شما مهم است تمرکز کنید – بک‌اند. استاد پایتون و تمام ابزارها و فریم‌ورک‌های مربوطه شوید و کار فرانت‌اند را به طراحان و توسعه‌دهندگان متمرکز بر فرانت‌اند بسپارید.

شبکه و اینترنت

در اینجا یک راز کوچک وجود دارد که ممکن است تعجب‌آور باشد: به‌عنوان یک مهندس پایتون، از شما انتظار نمی‌رود که تنها پایتون و چارچوب‌های مرتبط با آن را بدانید، همچنین باید درک کاملی از نحوه عملکرد اینترنت در سطح اساسی داشته باشید.

این بدان معنی است که اطلاعات و جزئیات پروتکل‌هایی مانند TCP، UDP و HTTPرا بدانید. همچنین باید با WebSocketها و چرایی اهمیت آنها آشنا باشید. به من اعتماد کنید، اگر در یک مصاحبه حاضر شوید و اصول پروتکل‌های اینترنتی را ندانید، احتمالاً احساس خجالت خواهید کرد.

بنابراین توصیه من این است که برای یادگیری در مورد فناوری‌های اساسی که وب را قدرتمند می‌کنند، وقت بگذارید. ممکن است جذاب‌ترین جنبه توسعه نرم‌افزار نباشد، اما اگر می‌خواهید یک مهندس خوب باشید، کاملاً ضروری است.

نکته‌ای که شما را از سایرین متمایز می‌کند : AWS

خب، بیایید در مورد رایانش ابری صحبت کنیم. اگر واقعاً به دنبال این هستید که در صنعت نامی برای خود دست‌و‌پا کنید، یادگیری AWSقطعا ارزش وقت شما را دارد. اما من با شما صادق خواهم بود: این آسان نخواهد بود.

مبحث AWS در حال حاضر یک ترند داغ است و اگر بتوانید در آن متخصص شوید، پس از آن شخص حرفه‌ای بسیار مورد‌توجه خواهید بود. اما اگر به‌دنبال دریافت گواهینامه AWSهستید، اجازه دهید به شما هشدار دهم: راه سختی خواهد بود. منظورم این است که غیرممکن نیست، اما ممکن است احساس کنید این راه جان‌فرسا است.

همانطور که گفته شد، حتی اگر برای دریافت گواهینامه نروید، باز هم ارزش وقت گذاشتن برای یادگیری مسائل و نکات رایانش ابری را دارد. توانایی کار با خدمات و زیرساخت‌های ابری در دنیای توسعه نرم افزار ضروری‌تر می‌شود. بنابراین اگر می‌خواهید جلوتر از منحنی‌ها بمانید، قطعاً این منطقه‌ای است که باید روی آن تمرکز کنید.

نتیجه‌گیری

در پایان، امیدوارم این مقاله به شما درک روشنی از مهارت‌های لازم برای تبدیل شدن به یک مهندس موفق پایتون در سال ۲۰۲۳ داده باشد. به خاطر داشته باشید که صنعت فناوری اطلاعات دائماً در حال پیشرفت است و مهم است که درباره آخرین روندها و فناوری‌ها به‌روز بمانید. به یاد داشته باشید که هر روز به تمرین، ساختن پروژه‌ها و یادگیری چیزهای جدید ادامه دهید. در سفر خود برای تبدیل شدن به یک مهندس ماهر پایتون موفق باشید!

این متن با استفاده از ربات ترجمه مقالات برنامه‌نویسی ترجمه شده و به صورت محدود مورد بازبینی انسانی قرار گرفته است.در نتیجه می‌تواند دارای برخی اشکالات ترجمه باشد.
مقالات لینک‌شده در این متن می‌توانند به صورت رایگان با استفاده از مقاله‌خوان ترجمیار به فارسی مطالعه شوند.