從 2000 年代后期開始流行之后,DevOps 就作為開發(fā)與運維團隊之間的一種更優(yōu)的協(xié)調(diào)方式存在,改變了許多 IT 團隊的工作模式與組織架構(gòu)。而聚焦于 IT 團隊中的個體,運維工程師的 “存在感” 毫無疑問是在持續(xù)、快速下滑的,取而代之的是能夠同時兼顧開發(fā)運維工作流程的 DevOps 工程師。同時,由于 DevOps 工程師的薪酬普遍更高,工作也更具發(fā)展前景,所以越來越多的工程師尤其是運維工程師在尋求轉(zhuǎn)型成為更全能的 DevOps 工程師。
2021 年《全球 DevSecOps 現(xiàn)狀報告》顯示,去年實行 DevOps 的企業(yè)數(shù)量持續(xù)飆升,已經(jīng)從 2020 年的 27%,迅速增長到 35.9%。與此同時,信通院在去年發(fā)布的《中國 DevOps 現(xiàn)狀調(diào)查報告》也顯示,70% 的受訪者表示自己所在的團隊使用了 DevOps 平臺。這也代表著,企業(yè)需要更多懂 DevOps 的工程師。
那么,IT 運維人員該如何轉(zhuǎn)型 成為 DevOps 人才?本文嘗試給出幾個解決方案。
首先,我們要先明確 IT 運維和 DevOps 的異同。二者的聯(lián)系往往非常密切,同時在工作職能上也有所重合,包括:維護 IT 基礎(chǔ)設(shè)施,部署軟件,監(jiān)控和觀察投入生產(chǎn)的軟件,向其他開發(fā)人員提供反饋意見和更新幫助等等。
二者的區(qū)別在于,DevOps 工程師在這些相同的運維工作之外,還承擔(dān)了更多 —— 大量軟件開發(fā)相關(guān)的流程與工作。雖然 DevOps 工程師實際需要寫的代碼數(shù)量因工作而異,各不相同,但至少應(yīng)該對編碼和軟件工程有透徹的了解。此外,DevOps 工程師還必須了解源代碼管理、持續(xù)集成和軟件測試自動化的具體流程,而這些也是現(xiàn)代軟件開發(fā)鏈上的核心組成部分。
DevOps 工程師之所以需要具備軟件開發(fā)流程以及運維方面的專業(yè)知識,是因為 DevOps 的核心目的是統(tǒng)一開發(fā)與運維。
而對于運維人員來說,轉(zhuǎn)型成為 DevOps 工程師主要有兩個原因。一是薪酬,根據(jù)一項國際上的調(diào)查,DevOps 工程師的平均工資在 105000 美元左右,運維工程師的薪資則平均不到 7000 美元,二者之間有一定的差距。
二是 DevOps 領(lǐng)域具有更多的機會,越來越多的企業(yè)開始引入 DevOps 工具、人才、概念流程等等,以期望能引導(dǎo)企業(yè)進行 IT 變革與創(chuàng)新,這便造就了 DevOps 更廣闊的發(fā)展前景。與此相對,單一的運維人員雖然不會很快消失,但可以想見,運維人員的工作將會變得更加普通且可以預(yù)測。
IT 人員如何學(xué)習(xí) DevOps
學(xué)習(xí)編程
運維人員往往對編程有一定的了解,尤其是使用一些腳本語言管理自動化的 IT 任務(wù)時,但是想要做好 DevOps,還需要掌握更加專業(yè)的軟件開發(fā)技能。比如需要掌握 Java 或 C 語言,對于大型代碼庫管理工具如 Git 也要有所了解等等。
一件趁手的工具
飛算云智總裁陳定瑋認為,互聯(lián)網(wǎng)技術(shù)是非常龐雜的,并且發(fā)展日新月異,開發(fā)與運維之間的技術(shù)鴻溝真實存在并且日益加深。對國內(nèi)大部分 IT 企業(yè)來說,依靠 DevOps 的理念并不能彌補這種鴻溝。因為 DevOps 的實施對人才的依賴性強,且對人員的基本素質(zhì)要求非常高。這也是很多 IT 公司在實踐 DevOps 時不得不以失敗告終的原因。如果沒有一個更加有效的平臺讓它落地,那么 DevOps 這一出色的工程理念和工程技術(shù)便無法在中國得到進一步推廣。
當(dāng)下企業(yè)在引進 DevOps 工作流程時,必然也會選擇相應(yīng)的平臺工具,因此,想要適應(yīng)市場發(fā)展,成為 DevOps 人才,也必須要了解相關(guān)工具。
SoFlu 軟件機器人是一款能夠有效助力企業(yè)落地 DevOps 的全自動軟件開發(fā)工具,通過可視化編程的方式滿足開發(fā)需求,也就是說,通過人機協(xié)同,軟件機器人可自動完成軟件開發(fā)、測試和運維,由此提高工作效率,使用戶可以更多關(guān)注自身業(yè)務(wù)。在平臺使用過程中,可以達到一個機器人相當(dāng)于一個 10 人科技團隊的效果。
此外,應(yīng)用 SoFlu 軟件機器人,開發(fā)者還可以通過管理平臺來管理需求、研發(fā)、測試、部署、上線、運維等整個軟件生命周期,沉淀經(jīng)驗、積累知識,將管理制度真正落地。
以測試平臺為例,SoFlu 軟件機器人通過自動化的生命周期管理、測試用例自動生成、測試數(shù)據(jù)管理等功能,解決了人工測試耗時長、測試跟蹤管理難、測試成本高等難題。軟件質(zhì)量可以通過工具、流程和管理予以保障,而不再依靠有豐富經(jīng)驗的軟件工程師。如今,SoFlu 軟件機器人已經(jīng)應(yīng)用于包括醫(yī)療、金融、制造、零售等在內(nèi)的八大行業(yè),助力其落地 DevOps。
學(xué)習(xí) CI/CD
許多運維工程師實際上已經(jīng)在 CI/CD 的流程中工作了,但是往往不會有機會以開發(fā)工程師的身份參與其中,而僅僅只是 CI/CD 流程鏈末端的工作,即將代碼部署到生產(chǎn)環(huán)境中去。但是想要實際進行 DevOps 的工作,工程師需要掌握一整套的 CI/CD 流程。
其中一種方式便是通過 CI/CD 平臺來練習(xí):練習(xí)使用 CI/CD 套件去構(gòu)建、測試、并部署和更新代碼。練習(xí)過一整套 CI/CD 流程必然會對 DevOps 有更深的了解。
開放心態(tài),擁抱 “一切即代碼”
一切即代碼 (EaC) 是指通過定義和編碼用于創(chuàng)建、維護、迭代或擴展應(yīng)用程序開發(fā)的基礎(chǔ)設(shè)施、模式和管道來管理軟件開發(fā)、交付和管理的各個方面的想法。這是一種隱喻擴展 —— 將應(yīng)用程序開發(fā)方法應(yīng)用于 IT 的其他流程,包括 DevOps,以確保以最少的投入來遵循最佳實踐。
IT 工程師有時也會使用一些基于代碼的配置工具,比如基礎(chǔ)架構(gòu)即代碼平臺 IaC,而這類工具在 DevOps 中是必要的。因此,工程師可以嘗試更多地去了解各種新興工具,擁抱 “一切即代碼”。往往工程師使用代碼管理系統(tǒng)和流程的能力越強,在 DevOps 方面表現(xiàn)就會越為出色。
最后,對于 IT 運維工程師來說,學(xué)習(xí) DevOps 是提升職業(yè)生涯的一種非常不錯的方式,同時還有助于拓寬知識面,接觸更多工作,掌握更多技能。只要從戰(zhàn)略上思考將自己的技能擴展為 DevOps 技能,那么離實現(xiàn)這種轉(zhuǎn)變與提升也就不遠了。
(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負任何法律責(zé)任。
任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應(yīng)及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )