什麼是 DevOps 方法以及誰需要它

讓我們弄清楚方法論的本質是什麼以及它可以使誰受益。

我們還將討論 DevOps 專家:他們的任務、薪水和技能。

什麼是 DevOps 方法以及誰需要它
照片 馬特·摩爾 /Flickr/CC BY-SA

什麼是 DevOps

DevOps 是一種軟體開發方法,其任務是在公司中的程式設計師和系統管理員之間建立互動。 如果來自不同部門的IT專家不了解彼此的任務,那麼他們的新應用程式和更新的發布就會被延遲。

DevOps 創建了「無縫」的開發週期,從而有助於加快軟體產品的發布。 透過引入自動化系統來實現加速。 另外,程式設計師開始參與設定伺服器和尋找錯誤,例如,他們可以編寫自動化測試。

這改善了部門之間的互動。 員工開始更了解軟體產品在到達使用者手中之前要經歷哪些階段。

當開發人員了解管理員在設定伺服器時面臨的情況時,他會嘗試消除程式碼中可能存在的「尖角」。 這減少了部署應用程式時的錯誤數量 - 根據統計, 降低 大約五次。

誰需要和不需要方法論

許多 IT專家認為DevOps 將使任何開發軟體的組織受益。 即使該公司只是 IT 服務的簡單消費者並且不開發自己的應用程序,情況也是如此。 在這種情況下,實施 DevOps 文化將幫助您專注於創新。

例外 化妝品 新創公司,但一切都取決於專案的規模。 如果您的目標是推出最小可行產品 (MVP) 來測試新想法,那麼您可以不用 DevOps。 例如,Groupon 的創始人開始手動開發該服務 發布 網站上的所有報價和收集的訂單。 他沒有使用任何自動化工具。

只有當應用程式開始流行時,實施自動化方法和工具才有意義。 這將有助於簡化業務流程並加快更新的發布速度。

如何實作 DevOps

以下是轉向新方法的一些建議。

識別業務流程中的問題。 在實施方法之前,強調組織的目標和問題。 向 DevOps 過渡的策略將取決於他們。 為此,請列出問題清單,例如:

  • 更新軟體時什麼最耗時?
  • 是否可以自動化這個流程?
  • 組織結構是否會影響這一點?

詳細了解如何識別組織中的問題 可以在書上讀到 «「鳳凰」計劃“和”開發營運指南» 來自該方法論的作者。

改變公司文化。 說服所有員工改變他們通常的工作方式並擴大他們的能力範圍非常重要。 例如,在 Facebook,所有程式設計師 回答 整個應用程式生命週期:從編碼到實現。 此外,Facebook 沒有單獨的測試部門——測試是由開發人員自己編寫的。

從小開始。 選擇在發布更新時花費最多時間和精力的流程並將其自動化。 這 可能是 測試或應用程式部署過程。 專家 勸告 第一步是實作分散式版本控制工具。 它們使管理來源變得更加容易。 在這些解決方案中,最著名的是 Git、Mercurial、Subversion (SVN) 和 CVS。

也值得關注負責組裝和測試最終產品的持續整合系統。 此類工具的範例:Jenkins、TeamCity 和 Bamboo。

評估改進。 為已實施的解決方案製定績效指標並建立清單。 指標可以包括發布頻率、開發軟體功能所花費的時間以及程式碼中的錯誤數量。 不僅與經理討論結果,也與參與專案的團隊其他成員討論結果。 詢問缺少哪些工具。 進一步優化流程時請考慮這些請求。

對 DevOps 的批評

雖然方法論 它可以幫助 組織可以更快地做出有關應用程式開發的決策, 削減 該軟體存在大量錯誤並鼓勵員工學習新事物,但也有批評者。

有 視圖程式設計師不應該了解系統管理員的工作細節。 據稱,DevOps 導致公司不再擁有開發或管理專家,而是擁有了解一切但膚淺的人員。

人們也認為 DevOps 不工作 管理不善。 如果開發和管理團隊沒有共同的目標,那麼管理者就應該為沒有組織團隊之間的溝通負責。 要解決這個問題,需要的不是新的方法論,而是根據下屬的回饋來評估管理者的系統。 你可以在這裡閱讀它, 員工調查表應包含哪些問題.

什麼是 DevOps 方法以及誰需要它
照片 艾德·伊万努甚金 /Flickr/CC BY-SA

誰是 DevOps 工程師

DevOps 工程師實作 DevOps 方法。 它同步創建軟體產品的所有階段:從編寫程式碼到測試和發布應用程式。 這樣的專家控制開發和管理部門,並透過引入各種軟體工具自動執行他們的任務。

DevOps 工程師的訣竅在於他結合了多種職業:管理員、開發人員、測試人員和經理。

Joe Sanchez,虛擬化軟體公司 VMware 的 DevOps 佈道者, 挑出來 DevOps 工程師必須具備的許多技能。 除了對 DevOps 方法的明顯了解之外,此人還應該具有管理 Windows 和 Linux 作業系統的經驗以及使用自動化工具(例如 廚師木偶Ansible。 他還應該能夠用幾種語言編寫腳本和程式碼並了解網路技術。

DevOps 工程師負責與配置和部署應用程式相關的任何任務的自動化。 軟體監控也落在了他的肩膀上。 為了解決這些問題,他使用各種組態管理系統、虛擬化解決方案和雲端工具來平衡資源。

誰在招聘

DevOps 工程師可以使任何開發應用程式或管理大量伺服器的組織受益。 開發營運工程師 正在招聘 亞馬遜、Adobe 和 Facebook 等 IT 巨頭。 他們也曾在 Netflix、沃爾瑪和 Etsy 上工作。

不招聘 DevOps 工程師只是新創公司。 他們的工作是發布最小可行產品來測試新想法。 在大多數情況下,新創公司可以不需要 DevOps。

多少工資

開發營運工程師  比業內任何人都多。 全球此類專家的平均收入為每年 100 億至 125 萬美元。

在美國他們 得到 每年90萬美元(每月500萬盧布)。 在加拿大他們 支付 每年 122 萬美元(每月 670 萬盧布),英國每年 67,5 萬英鎊(每月 490 萬盧布)。

至於俄羅斯,莫斯科公司 準備好 每月向 DevOps 專家支付 100 億至 200 萬盧布的工資。 在聖彼得堡,雇主更慷慨一些——他們每月提供160-360萬盧布。 在這些地區,薪資報價為每月 100-120 萬盧布。

如何成為 DevOps 專家

DevOps 是 IT 領域一個相對較新的方向,因此沒有針對 DevOps 工程師的既定要求清單。 在職位空缺中,該職位的要求包括 Debian 和 CentOS 管理技能以及使用磁碟機的能力。 RAID陣列.

基於此,我們可以得出這樣的結論:首先,DevOps工程師必須具備良好的技術面貌。 對這樣的人來說,不斷學習新的工具和技術很重要。

成為 DevOps 工程師最簡單的方法是成為系統管理員或開發人員。 他們已經擁有許多需要發展的技能。 主要任務是提高 DevOps 的最低限度知識,了解如何使用自動化工具並填補管理、程式設計和虛擬化技能方面的空白。

要了解知識還缺乏哪些地方,可以使用 GitHub 上的迷你維基百科 或 心理地圖。 駭客新聞的居民也 推薦 看書 ”「鳳凰」計劃“和”開發營運指南“(我們上面提到過)和”DevOps 理念。 IT 管理的藝術» 蓋有 O'Reilly Media 印章。

您也可以訂閱 DevOps 每週通訊、閱讀專題文章 門戶 DZone 並開始與 DevOps 工程師溝通 閒聊。 也值得查看以下網站上的免費課程 Udacity 或 EDX.

來自我們部落格的貼文:



來源: www.habr.com

添加評論