
در این مقاله قصد داریم بررسی کنیم که مهندس دواپس کیست و چه وظایفی دارد؟ چگونه میتوانیم به یک مهندس DevOps تبدیل شویم؟ برای این کار چه مهارتهایی لازم است؟ با ما همراه باشید. در مقاله قبل با مفهوم دواپس آشنا شدیم و گفتیم که این مفهوم به همکاری میان تیمهای توسعه محصول و عملیات اشاره دارد. با توجه به این که سازمانهای مختلف روز به روز بیشتر با ضرورت دواپس آشنا میشوند و به دنبال اجرایی کردن آن هستند، نیاز به متخصص یا مهندس دواپس نیز رو به افزایش است.
مهندس دواپس و مفاهیم دواپس
برای این که با موقعیت شغلی مهندس DevOps آشنا شویم، لازم است نگاهی دوباره به مفهوم دواپس بیاندازیم. دواپس فرایندی است که روی دو ارزش مهم تکیه دارد: توسعه سریعتر و نگهداری سادهتر. تعاملی که دواپس میان دو تیم توسعه و عملیات ایجاد میکند، سرعت انجام کارها را تا حد زیادی بالا میبرد، این امر منجر به سرعت در ارائه امکانات و خدمات و در نهایت موجب پیشرفت کسب و کار میشود. با این توضیحات مشخص میشود دواپس مفهومی چند بعدی است که هم فرهنگ و هم فناوری و ابزارها را در بر میگیرد.
با توجه به تعریفی که از دواپس ارائه کردیم، روشن است که برای تبدیل شدن به یک مهندس دواپس، علاوه بر داشتن مهارتهای فنی، لازم است این فرهنگ را درک کنید و روحیه تعاملی داشته باشید.
مهندس دواپس کیست؟
دواپس فرآیندهای سازمان را بهینهسازی میکند و از طریق خودکارسازی امور، بهرهوری را افزایش میدهد. در حقیقت دواپس یک دید یا بصیرت جدید ارائه میکند که با کمک آن سازمانها میتوانند منعطفتر باشند و با سرعت بیشتری در جهت رفع نیازهای مشتریان حرکت کنند.
برای تبدیل شدن به یک مهندس دواپس، فعالان دنیای IT باید مهارتی علاوه بر مهارتهای فعلی خود کسب کنند. اکثر متخصصان این حوزه، ابزارها و روشهای دواپس را با تجربیات خود در زمینه IT ترکیب میکنند. برای به دست آوردن یک دیدگاه جامع در دواپس، باید از دانش خود در زمینه IT استفاده کنید و به فکر کسب مهارتهای جدید باشید. این مهارتها همان طور که اشاره کردیم، هم به امور فنی و ابزارها باز میگردد و هم روحیات فردی را در بر میگیرد.
افرادی که در حوزه فناوری اطلاعات فعالیت میکنند، میتوانند با ارتقا دانش خود و کسب بعضی مهارتها، به دنیای دواپس بپیوندند. مهندس دواپس لزوما برنامهنویس یا کدنویس نیست اما با این حوزهها آشنایی دارد و داشتن مهارتهای نرمافزاری، میتواند مسیر شغلی او را هموارتر کند. متخصصان دواپس با مهندسهای نرمافزار و برنامهنویسان و اپراتورهای سیستم در تعامل هستند و لازم است با ادبیات این حوزهها آشنایی داشته باشند.
مهندس دواپس باید چه مهارتهایی داشته باشد؟
موارد زیر را میتوان به عنوان مهارتهای مورد نیاز یک مهندس DevOps مطرح کرد:
- توانایی تحلیل و ارزیابی سیستمها و فراهم کردن بستری برای خودکارسازی فرآیندها
- آشنایی با نرمافزار و برنامهنویسی زبانهای اسکریپتی
- تسلط به مفاهیم یکپارچهسازی مداوم و تحویل مداوم (CI / CD)
- تسلط بر ابزارهای دواپس مانند , GitLab, Azure Devops Docker , Jenkins، Git و…
- آشنایی با Infrastructure as Code مانند Terraform , Puppet, Chef
- آشنایی با ابزارهای مانیتورینگ و لاگینگ مانند ELK،Prometheus & Alert Manager , Datadog و …
- آشنایی با نحوه استفاده از نرمافزارهای مدیریت پیکربندی مانند Ansible، PowerShell DSC
- توانایی شناسایی ایرادات در سیستم و ارائه راهکار برای رفع آنها
مهندس دواپس در مرحله اول از دانش و تجربه توسعهدهندگان و مدیران تولید استفاده میکند. او پس از مشخص شدن اهداف پروژه و قالب نرمافزاری، تلاش میکند روشی بیابد که به وسیله آن، اهداف در قالب سیستمی یکپارچه محقق شوند.
در گام بعد تولید و توسعه نرمافزار آغاز میشود و مهندس DevOps باید قطعات و بخشهای مختلف کدها را که توسعهدهندگان نوشتهاند، دریافت کند، در کنار هم قرار دهد و هماهنگ کند تا در نهایت به یک سیستم یکپارچه تبدیل شوند.
در مرحله سوم لازم است کدهای نوشتهشده، مورد آزمایش قرار بگیرند. در مرحله تست، قطعه کدها برای ادغام با سورس کد اصلی آماده میشوند. در این مرحله ابزارها به کمک دواپس میآیند. مهندس دواپس با استفاده از ابزارهای دیپلویمنت مثل Jenkins میتواند تمامی تسکهای بیلد و تست و دیپلوی نرمافزار را به صورت خودکار انجام دهد. ابزارهای دواپس یکپارچهسازی مداوم یا CI را سادهتر میکنند.
مرحله بعد، به استقرار بخشهای جدید در کد اصلی میپردازد. در این مرحله باید تصمیمگیری شود که کدها با چه ترتیبی به کد اصلی اضافه شوند و امکانات جدید چه زمانی و با چه ترتیبی در اختیار کاربر نهایی قرار گیرد. مرحله استقرار نیز با استفاده از ابزارهای دواپس و به صورت خودکار انجام میشود.
مرحله پنجم، نگهداری است. در این مرحله مهندسان دواپس سرویس را تحت نظر میگیرند، راهکارهایی را برای شناسایی خطاها و اشکالات سیستم مییابند و در راستای رفع خطاها میکوشند.
جمعبندی
دانش و ویژگیهای مورد نیاز برای تبدیل شدن به یک مهندس دواپس را با هم بررسی کردیم. اگر سابقه فعالیت در حوزه IT دارید، میتوانید با کسب بعضی مهارتها وارد حوزه دواپس شوید و به کسب تجربه بپردازید. همان طور که اشاره کردیم، دواپس تنها یک فناوری نیست و حتی میتوان آن را یک فرهنگ معرفی کرد. لازم است برای ورود به حوزه دواپس بر ابزارها و فرآیندهای این حوزه مسلط باشید و فرهنگ آن را درک کنید. دواپس رویکرد یا دیدگاهی است که تعامل میان تیمها را افزایش میدهد، بر توسعه و یکپارچهسازی مداوم تاکید دارد، فرآیندها را خودکار میکند، و امکانات و سرویسها را با سرعت بیشتری در اختیار کاربران نهایی قرار میدهد.