آنچه باید هنگام تبدیل شدن به یک مهندس DevOps بدانید » پلاتو کد
انتشار: بهمن 18، 1401
بروزرسانی: 27 خرداد 1404

آنچه باید هنگام تبدیل شدن به یک مهندس DevOps بدانید » پلاتو کد


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

اکنون کمی بیش از یک سال است که به عنوان یک مهندس نرم افزار تمام وقت کار می کنم و در حال حاضر مسیر شغلی جدیدی را شروع کرده ام! نه، من توسعه نرم افزار را پشت سر نمی گذارم. من به عنوان یک نفر آورده شده ام مهندس DevOps مشاور یک شرکت بزرگ داروسازی

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

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

مهندسان DevOps گردش کار و چرخه های تحویل را برای تیم های نرم افزاری در سراسر سازمان و همه محصولات دیجیتال آن مدیریت می کنند. آنها سیستم های مشترکی را ایجاد می کنند که به تیم های دیگر اجازه می دهد پیشرفت کنند و راه حل های سفارشی برای نیازهای منحصر به فرد پلت فرم خود ایجاد می کنند.

تیم های پشتیبانی مهندسین DevOps

موارد زیر را تصور کنید: شما یک مهندس DevOps هستید که از یک شرکت بزرگ مراقبت های بهداشتی پشتیبانی می کنید. شما هفت تیم از مهندسان نرم افزار دارید که برنامه های کاربردی را با استفاده از زبان های برنامه نویسی مختلف ارائه می دهند. شما مقداری دات نت در سی شارپ، مقداری جاوا، تعدادی برنامه نویسی bash و حتی مقداری PowerShell دارید! که پشتیبانی از توسعه دهندگان و پیچیدگی زیاد است.

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

مهندسان DevOps راه حل های سفارشی ایجاد می کنند

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

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

یکی از ابزارهای عالی که در چند ماه اول کارم توانستم بر آن مسلط شوم این بوده است اقدامات Github، و همکار من نوشته است مقاله مقدماتی روی ابزار

مهندسان DevOps حل کننده مشکلات هستند

همانطور که یکی از رهبران تیم من اشاره می کند، "هر کسی می تواند یک وب سایت بسازد." اگرچه ممکن است آنها وب سایت های پایدار یا خوش نوشته ای نباشند، من کاملاً موافقم. مقدار اسناد موجود در هر چارچوب وب گسترده است. گاهی اوقات به نظر می رسد که همه چیز یک پست StackOverflow در مورد آن نوشته شده است.

DevOps متفاوت است زیرا به جزئیات پیاده سازی بستگی دارد. DevOps متشکل از روش ها و بهترین شیوه ها است که باید در موقعیت های بی شمار مختلف اعمال شوند. شما مقالات بسیار خوبی خواهید یافت که در مورد بهترین متدولوژی ها صحبت می کنند اطمینان از انطباق مداوم با AWS، اما به ندرت با دستورالعمل های دقیقی در مورد نحوه ادغام یک برنامه 10 ساله قدیمی دات نت فریم ورک 3.0 در یک گردش کار امنیتی مواجه خواهید شد. به عنوان یک مهندس DevOps، باید در رویکرد خود انعطاف پذیر باشید و در یافتن راه حل ها سرسخت باشید.

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

آیا می توانید یک مهندس توسعه (DEVOPS) شوید؟

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

من دروغ نمی گویم - مسیر شغلی مهندس DevOps آسان نیست و به دور از جذابیت است. این رشته شغلی همه چیز در مورد پشتیبانی است و اگر کار خود را انجام می دهید، در کانون توجه قرار نخواهید داشت. شما دیگران را قادر می سازید تا به پتانسیل کامل خود برسند، اما به ندرت مورد شناسایی قرار می گیرید. گاهی اوقات مجبور می شوید در مسیر توسعه دهندگان قرار بگیرید، اما می دانید که کدی که مشتریان دریافت می کنند امن خواهد بود. شما مکرراً جریان کار را زیر سؤال می برید و موانع را از بین می برید، اما تغییر هنجارهای سازمانی دشوار است.

بنابراین، اگر می خواهید روی زندگی توسعه دهندگان نرم افزار و پرسنل عملیاتی تأثیر بگذارید، امیدوارم در آینده شما را در تیم DevOps خود ببینم.

این پست در ابتدا به عنوان ظاهر شد هنگام تبدیل شدن به یک مهندس DevOps چه باید بدانید، در 19 ژانویه 2023. Code Platoon از 8th Light برای اجازه اش برای ارسال مجدد این وبلاگ تشکر می کند.

ست توماس یک سازنده نرم افزار در 8th Light است. قبل از پیوستن به 8th Light، ست از Bootcamp کدگذاری نظامی Code Platoon فارغ التحصیل شد که از طریق برنامه DoD SkillBridge. ست در رالی، کارولینای شمالی زندگی می کند و از صخره نوردی، کوهنوردی، قایقرانی و دویدن لذت می برد.



منبع