مهندسی نرم افزار یا مهندسی DevOps » Code Platoon


همانطور که می دانید، Code Platoon اخیراً خود را راه اندازی کرده است برنامه مهندسی DevOps، اولین برنامه جدید از زمانی که ما با برنامه خود شروع کردیم بوت کمپ مهندسی نرم افزار تمام پشته.

اما همراه با یک برنامه و برنامه درسی جدید، سؤالات جدیدی در مورد اینکه اگر می خواهید در دنیای فناوری شروع کنید، کدام یک از اینها را انتخاب کنید، وجود دارد. چه مهارت هایی برای هر کدام مهم است؟ رشته ها چه فرقی با هم دارند؟ و به هر حال DevOps چیست؟

هم یک توسعه‌دهنده DevOps و هم یک توسعه‌دهنده Full-Stack، متخصصان بسیار پیچیده‌ای هستند که در جهت یک هدف کار می‌کنند – ارائه برنامه‌های نرم‌افزاری به موقع و بدون اشکال. فلسفه ها و روش هایی که برای رسیدن به هدف انتخاب می کنند همان چیزی است که آنها را از یکدیگر متمایز می کند

با آن، یک قیاس مفید است. دنیای تدارکات فناوری نظامی را تصور کنید.

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

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

در سطوح اولیه، مهندسین برای درک ساخت مواد و تشخیص چگونگی خلاقیت مورد نیاز هستند. راکت های بیشتری کجا می توانند جا شوند؟

اینجاست که مهندسی و هنر در کنار هم قرار می گیرند. لزوماً چیزی کاملاً جدید ایجاد نمی کند، بلکه از مفاهیم موجود به روشی جدید و از نظر عملکرد برتر استفاده می کند.

sdcاما اگر می خواهید این پروژه هم به خوبی و هم کارآمد انجام شود، به چیزی نیاز دارید که حلقه بازخورد نامیده می شود. اینکه یک آغازگر پروژه بگوید: «من می‌خواهم این کار X را انجام دهم» و سپس مهندسان آن را در اولین تلاش کاملاً طراحی کنند، کارساز نخواهد بود. شما به طرح اولیه، بازخورد مهندسان برای اطلاع رسانی به آن طرح، پاسخ از طرف برنامه ریز و تغییرات مداوم به این شیوه که چرخه بازخورد، برنامه ریزی و اجرا را تشکیل می دهد، نیاز دارید.

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

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

در دنیای نرم افزار، این حلقه بازخورد هرگز بسته نمی شود. همانطور که یک فرد آگاه می گوید، «اگر برنامه [or website] ارزش نمکش را دارد، در طول زمان به طور مداوم تغییر خواهد کرد.

مهندسان نرم افزار هم در بخش جلویی و هم در بک اند متخصص هستند. آنها به هر دو زبان Back-end و Front-end مسلط هستند و اطلاعات دقیقی از چارچوب ها، سرورها و محیط های شبکه و میزبانی دارند.

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

مهندسان DevOps تجربه عملی و دانش عمیق خود را در توسعه نرم افزار با تخصص اصلی تجزیه و تحلیل کسب و کار ترکیب می کنند تا راه حل های تجاری نوآورانه ای ارائه دهند.

همه اینها از دیدگاه شخصی که به Code Platoon می آید به یک سوال اساسی تر منجر می شود: کدام یک برای شما مناسب است؟

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

آیا شما فردی خلاق تر و فلسفی هستید که به سمت کاربرد منحصر به فرد زبان و تفاوت های ظریف آن میل می کنید؟ یا از نوع ساختارمندتری هستید که از فرآیندهای اجرای پروژه توسعه یافته در سطح بهینه لذت می برید؟

باز هم، اینها سکته‌های وسیعی از نمای 30000 فوتی هستند، بنابراین همه این‌ها را در نظر بگیرید، اما اصرار نکنید که هیچ یک از آن‌ها قوانین سخت و سریعی باشد. همپوشانی کافی است که درک هر حوزه کمک بزرگی به هر یک از مسیرها خواهد کرد و یادگیری یکی ممکن است در نهایت شما را به دیگری هدایت کند.

اما درک خودت یک عنصر کلیدی در هر سفر است، به خصوص زمانی که صحبت از انتخاب های بزرگ در مورد اینکه کدام مسیر را انتخاب کنید به میان می آید. دقیقاً به همین دلیل است که من اینجا در Code Platoon هستم، بنابراین در تماس گرفتن و پرسیدن سؤالات دقیقاً در این مورد تردید نکنید. خوشهال میشم کمک کنم.





منبع

Matthew Newman

Matthew Newman Matthew has over 15 years of experience in database management and software development, with a strong focus on full-stack web applications. He specializes in Django and Vue.js with expertise deploying to both server and serverless environments on AWS. He also works with relational databases and large datasets
[ Back To Top ]