當軟件開發(fā)人員與運維工程師一起工作時,他們雙方都并不清楚對方的工作性質與感覺,但是這兩種職位有一定的相似性。軟件開發(fā)人員負責構建和維護軟件,而運維人員則負責保證軟件的正常運行。開發(fā)人員構建的軟件主要面向客戶或最終用戶,而運維工程師構建的軟件則通常面向本部門或本公司的其他工程師。然而、在源代碼方面、軟件工程師與運維工程師之間已經不存在絕對的界線?,F今的系統(tǒng)操作員不能只知道如何修改配置和維護文件系統(tǒng)、他們已經被新型工程師所取代:既要能開發(fā)新應用、又要能勝任運維工作并保證軟件的高效運行關于運維人員與軟件開發(fā)人員之間的關系,20年前與現在相比有什么不同(在發(fā)布、故障修復和協(xié)作方面)?
一開始、我在一家小公司擔任顧問職務、主要負責編寫代碼、安裝操作系統(tǒng)與軟件及管理數據庫服務器。我以前從未寫過代碼,但是我有運行Uuix工作站的經驗,所以一開始運維工作對于我來說比較輕松。后來,我們增加了一個職責更清晰的運維團隊;然而,他們似乎更關注于網絡、操作系統(tǒng)和數據庫管理員方面的工作。
這兩個團隊的關系總是很微妙。我記得,有一位高級開發(fā)人員總是在一個窗口上運行Unix的w命令,一旦看到有管理員登錄他的設備并準備安裝補丁時,他就會馬上關閉網絡服務!他真的不希望有人搞亂他現有的環(huán)境。我認為,這個分界線在20年前和現在的變化并不大,但是我們所在環(huán)境的規(guī)模與復雜性,以及所處的公司文化都發(fā)生了很大變化。我曾經在一些擁有大規(guī)模服務器群的站點工作,其中運維團隊只負責管理操作系統(tǒng),而開發(fā)人員則負責所有其他事務。在其他一些環(huán)境中,開發(fā)人員與運維人員也有嚴格的職責劃分。
作為開發(fā)人員,您對開發(fā)運維( Devops)有什么看法?
在很多方面,我認為它實際上是“開發(fā)開發(fā)”( Devdev)。似乎很多以前屬于運維人員職責范圍的工作都轉移給了開發(fā)人員。我認為這是個正確的轉變。如果一位開發(fā)人員能夠編寫軟件,那么他一定也要能管理軟件在生產環(huán)境的運行,而如果將這項工作轉交給運維團隊,其代價會更高,也更容易出現錯誤。避免了工作轉移,也就避免了問題,而且開發(fā)人員也能夠繼續(xù)負責管理自己編寫的軟件。如果他們會在半夜因為軟件出現意外問題而被人叫醒,那么他們一定會去努力修復這個軟件問題,因為他們肯定不愿意總是在私人時間里被人打擾。如果不經歷這樣的痛苦,他們就不會有動力,就體會不到好好對待同事的好處,也就不會認真地開發(fā)出好的軟件。此外,舉例來說,任何只懂編寫Java代碼的人肯定不會認真提高自己的工作質量,而我是肯定不會招聘這種人的。
開發(fā)運維是否與敏捷相似?
它們在很多方面有相似性。敏捷提倡團隊合作,推崇分擔責任。通常,人們認為這種方法要求開發(fā)人員不斷地切換角色,然而敏捷方法則通常將QA視為敏捷團隊的內在特性。可以這樣說,開發(fā)運維將運維帶到敏捷中。
系統(tǒng)管理員能夠給開發(fā)人員的大幫助是什么?
訪問、數據和穩(wěn)定統(tǒng)一的環(huán)境。例如,來自不同主機的 Hadoop用戶應該擁有一個穩(wěn)定不變的用戶D。系統(tǒng)管理員要像開發(fā)人員對待代碼樣處理基礎架構和配置,并且要使用一種測試框架去測試軟件的修改如 Cucumber測試框架。
在與運維人員協(xié)作時,開發(fā)人員最應該注意的是什么?
網站建設開發(fā)人員一定要記住,如果出現了問題,那么有90%的可能性是開發(fā)人員自己的錯誤。
分享標題:網站建設軟件工程師眼里的開發(fā)運維
路徑分享:http://www.rwnh.cn/news/148713.html
網站建設、網絡推廣公司-創(chuàng)新互聯(lián),是專注品牌與效果的網站制作,網絡營銷seo公司;服務項目有網站建設等
廣告
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源:
創(chuàng)新互聯(lián)