偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

"DevOps"是如何傷害一個(gè)開(kāi)發(fā)者的

開(kāi)發(fā) 項(xiàng)目管理
“DevOps”用來(lái)表示密切地協(xié)作,將之前純粹的開(kāi)發(fā)者、純粹的操作者以及純粹的QA的角色內(nèi)容進(jìn)行穿插。因?yàn)檐浖枰圆粩嗉涌斓乃俣柔尫懦鰜?lái),老的開(kāi)發(fā)-測(cè)試-發(fā)布的“瀑布”型周期被打破了。開(kāi)發(fā)者還必須為測(cè)試及發(fā)布環(huán)境的質(zhì)量責(zé)任。

最近有兩個(gè)趨勢(shì)我真的很討厭:DevOps及“全棧”開(kāi)發(fā)者的概念。隨著DevOps運(yùn)動(dòng)越來(lái)越受歡迎我越發(fā)討厭x86架構(gòu)和單內(nèi)核。但確實(shí)如此:我受不了。是什么引發(fā)我的痛苦呢?這是原因:不是每一個(gè)公司都剛起步,那怎么還要每個(gè)公司都必須表現(xiàn)得像它們的經(jīng)歷一樣。

DevOps

“DevOps”用來(lái)表示密切地協(xié)作,將之前純粹的開(kāi)發(fā)者、純粹的操作者以及純粹的QA的角色內(nèi)容進(jìn)行穿插。因?yàn)檐浖枰圆粩嗉涌斓乃俣柔尫懦鰜?lái),老的開(kāi)發(fā)-測(cè)試-發(fā)布的“瀑布”型周期被打破了。開(kāi)發(fā)者還必須為測(cè)試及發(fā)布環(huán)境的質(zhì)量責(zé)任。

“開(kāi)發(fā)者”(這個(gè)詞是否適當(dāng)有待商榷)越來(lái)越廣的責(zé)任范圍導(dǎo)致了對(duì)聯(lián)合體求職者的需求:“全棧”開(kāi)發(fā)者。這樣的開(kāi)發(fā)者能夠做開(kāi)發(fā)工作,是QA團(tuán)隊(duì)的成員,能夠進(jìn)行業(yè)務(wù)分析,做系統(tǒng)管理員和DBA。在你指責(zé)我夸張前回頭再看下這個(gè)列表。列表中有你不希望“全棧”開(kāi)發(fā)者精通的嗎?

這些概念是從哪來(lái)的呢?初創(chuàng)公司,對(duì)(以及敏捷方法)。初創(chuàng)公司初起時(shí)奇形怪狀,需要以一種艱苦的方式撐過(guò)最初的幾年。對(duì)此我不否認(rèn)。但不幸的是,初創(chuàng)公司的工程師承擔(dān)了多種技術(shù)角色,被迫在缺乏一系列最基本能力的情況下承擔(dān)“開(kāi)發(fā)者”的角色。

身兼多職

想象你在一家初創(chuàng)公司,開(kāi)發(fā)團(tuán)隊(duì)共有7人。你已經(jīng)開(kāi)發(fā)了一年某個(gè)web應(yīng)用,現(xiàn)在看起來(lái)像模像樣,一切順利,但是在保持正常運(yùn)轉(zhuǎn)這方面卻往往是令人抓狂的混亂。如果有一個(gè)特別麻煩的問(wèn)題,需要深度研究數(shù)據(jù)庫(kù),你可沒(méi)有權(quán)力說(shuō)“這不是我的專(zhuān)長(zhǎng)”,然后交給 DBA 團(tuán)隊(duì)處理。條件所限,你不得不承擔(dān)起 DBA 的工作,自己解決這個(gè)問(wèn)題。

現(xiàn)在把這個(gè)情景擴(kuò)展到之前列出的所有職位吧。一個(gè)初創(chuàng)公司的開(kāi)發(fā)者可能同時(shí)擔(dān)任開(kāi)發(fā),QA,部署/操作分析員,系統(tǒng)管理員,還有 DBA 。初創(chuàng)公司天然如此,而有些人會(huì)特別適合這種環(huán)境。然而,不知從什么時(shí)候起,我們開(kāi)始自欺欺人說(shuō)自己適合;因?yàn)樵谌魏螘r(shí)候,一個(gè)初創(chuàng)公司的開(kāi)發(fā)者不得不身兼多職,他/她還必須一下子擔(dān)任所有這些角色

即使居然真有這樣的人,這些“全棧”開(kāi)發(fā)者仍然不能以他們適應(yīng)的方式工作。初創(chuàng)公司并不是讓他們?cè)谝欢螘r(shí)間內(nèi)擔(dān)任某一個(gè)角色,然后再轉(zhuǎn)換到下一個(gè)角色,而是要求他們一直同時(shí)擔(dān)任所有這些角色。最糟的是:大部分好的開(kāi)發(fā)者還幾乎可以應(yīng)付。

階級(jí)

好的開(kāi)發(fā)者都是聰明人。我知道我這么說(shuō)肯定會(huì)被拍,但一個(gè)組織里的技術(shù)人員還是有一個(gè)重要程度的層次區(qū)別的。最頂層是開(kāi)發(fā),接下來(lái)是系統(tǒng)管理員和 DBA。QA 團(tuán)隊(duì),“操作員”之類(lèi),發(fā)布管理員等等角色處于階級(jí)的最底層。為什么是這么個(gè)順序呢?

因?yàn)槊總€(gè)角色有能力做比它低的層次的所有工作。

初創(chuàng)公司教會(huì)我們這個(gè)道理。如果需要,好的開(kāi)發(fā)者也能當(dāng)合格的 DBA。他們也能當(dāng)不錯(cuò)的測(cè)試,“部署工程師”,或者其他什么形形色色的職位。他們的工作需要他們對(duì)更低層工作的領(lǐng)域也了如指掌。但這其中有一個(gè)問(wèn)題,希望說(shuō)到這里你也能看出來(lái):

反過(guò)來(lái)卻行不通。

QA 無(wú)法湊合當(dāng)開(kāi)發(fā)用,構(gòu)建(build)工程師也做不了 DBA 的工作。他們不具備擔(dān)任這些角色所必須的專(zhuān)業(yè)知識(shí)。這也沒(méi)關(guān)系。無(wú)論你喜歡與否,每個(gè)組織里都有這種階級(jí)層次,而成員的能力層次、技術(shù)水平也有所不同。盡管如此,你讓開(kāi)發(fā)去做其他工作,沒(méi)有人能來(lái)替他做開(kāi)發(fā)的工作!

舉個(gè)例子能說(shuō)得更清楚一些。我爸爸是一個(gè)開(kāi)私人診所的牙醫(yī)。他雇了一個(gè)秘書(shū),一個(gè)保健專(zhuān)家和一個(gè)牙醫(yī)助理。在所謂的“牙醫(yī)Ops”環(huán)境下,我爸爸需要一邊記錄病人的預(yù)約,一邊洗牙,同時(shí)還要擠出時(shí)間來(lái)給牙鉆孔,實(shí)施根管治療術(shù),等等。我爸爸能做得了診所里的其他工作,因?yàn)樗邆溥@些工作所需的專(zhuān)業(yè)知識(shí)。

但是其他人做不了他的工作,即使全加起來(lái)也不行。

如果診所要這么運(yùn)轉(zhuǎn),牽涉到的所有人都會(huì)受到損害,(當(dāng)然)除了雇員們。這場(chǎng)本意是希望提高軟件質(zhì)量的實(shí)驗(yàn)演變成了一場(chǎng)鬧劇,最有才華的員工疲憊不堪(并且有價(jià)值的工作產(chǎn)出遠(yuǎn)遠(yuǎn)減少),而低層次的職位根本不存在。

這就是這個(gè)問(wèn)題的關(guān)鍵所在。之前那些職位由不同能力層次的人分別擔(dān)任,而“全棧”工程師使得這些職位沒(méi)必要存在了。大公司非常喜歡這一點(diǎn),因?yàn)檫@意味著它們可以遠(yuǎn)遠(yuǎn)減少雇傭人數(shù),來(lái)完成同樣的工作量。然而,在這個(gè)過(guò)程中,真正的開(kāi)發(fā)在開(kāi)發(fā)者工作所占的比例越來(lái)越小。這就是為什么我們會(huì)看到這么多的開(kāi)發(fā)者通過(guò)不了 FizzBuzz:他們從來(lái)不用真正寫(xiě)任何代碼?,F(xiàn)在這個(gè)問(wèn)題已經(jīng)太普遍了,你能想象面試廚師時(shí)要問(wèn)他,每天他有多少時(shí)間是真正用來(lái)烹飪的嗎?

什么都做過(guò)一點(diǎn),什么都不精通

如果你是一個(gè)有點(diǎn)規(guī)模的軟件的開(kāi)發(fā)者,你會(huì)需要一個(gè)能用的部署系統(tǒng)??伎寄悖R上說(shuō)出以下系統(tǒng)各自的好處和壞處:Puppet,Chef,Salt,Ansible,Vagrant,Docker?,F(xiàn)在實(shí)現(xiàn)你的部署解決方案吧!你恐怕都沒(méi)有注意到,上面列出那些系統(tǒng)里有一項(xiàng)是完全無(wú)關(guān)的吧?

專(zhuān)業(yè)化是有原因的:人類(lèi)能運(yùn)用的知識(shí)有限。在任務(wù)之間切換,無(wú)疑是代價(jià)昂貴的。強(qiáng)迫開(kāi)發(fā)者去承擔(dān)其他專(zhuān)業(yè)人員的角色,意味著他們將:

  • 沒(méi)有把時(shí)間花在開(kāi)發(fā)上

  • 需要跟上一個(gè)極其龐大的知識(shí)領(lǐng)域

  • 會(huì)不堪重負(fù)

不僅如此,要強(qiáng)迫開(kāi)發(fā)者接受“全棧”的任務(wù),公司要付給雇員的工資遠(yuǎn)高于完成其中大部分任務(wù)的市場(chǎng)平均價(jià)格。如果一個(gè)開(kāi)發(fā)者1年賺100K,你可以雇4個(gè)1年100k的開(kāi)發(fā)者來(lái)做一個(gè)兩人的任務(wù),50%的時(shí)間做開(kāi)發(fā),50%的時(shí)間做發(fā)布管理;或者,你也可以只雇一個(gè)發(fā)布管理員,花上大概75k,然后兩個(gè)開(kāi)發(fā)者全職開(kāi)發(fā)。更不用說(shuō)兼職發(fā)布管理的開(kāi)發(fā)者,在沒(méi)有發(fā)布需要管理時(shí)浪費(fèi)的時(shí)間了。

不要扼殺開(kāi)發(fā)人員

這樣做全部的效果就是毀掉“開(kāi)發(fā)者”的作用,并且替之以“技術(shù)工種”。我所知的每個(gè)開(kāi)發(fā)人員都沉迷于編程,因?yàn)樗鼈冋嬲裏釔?ài)它(在某點(diǎn)上)。當(dāng)你強(qiáng)行讓這些聰明人執(zhí)行額外的任務(wù)時(shí),你則傷害了每個(gè)相關(guān)的人。

并非每個(gè)公司都是初創(chuàng)公司。出于選擇,初創(chuàng)公司沒(méi)有讓開(kāi)發(fā)人員參與多種職能,他們這樣做是因?yàn)楸匾?。你的公司很可能在你沒(méi)有創(chuàng)造出一些資源之前有著極大的制約。請(qǐng)不要混淆“精簡(jiǎn)”與“以最少雇員運(yùn)營(yíng)”的區(qū)別??丛谏系鄣拿嫔?,讓開(kāi)發(fā)人員寫(xiě)代碼吧!

英文原文:

譯文鏈接:http://www.oschina.net/translate/how-devops-is-killing-the-developer

責(zé)任編輯:林師授 來(lái)源: 開(kāi)源中國(guó)社區(qū) 編譯
相關(guān)推薦

2015-09-01 09:53:04

Java Web開(kāi)發(fā)者

2010-08-24 08:58:42

開(kāi)發(fā)者

2009-09-11 08:44:36

2018-05-14 11:24:20

Python開(kāi)發(fā)者工具

2013-07-25 17:28:02

2019-06-27 10:15:46

架構(gòu)代碼項(xiàng)目

2021-03-16 07:56:26

開(kāi)發(fā)者入職技術(shù)

2014-08-01 10:24:11

2015-06-05 09:15:37

移動(dòng)開(kāi)發(fā)者

2014-06-18 09:55:29

iOS開(kāi)發(fā)者學(xué)習(xí)Android

2015-08-06 17:15:28

2012-10-23 14:01:21

Yibo 客戶(hù)端已經(jīng)停

2013-02-20 15:10:56

2014-05-12 16:00:14

DevOps開(kāi)發(fā)者

2022-07-07 09:28:29

RocketMQ存儲(chǔ)系統(tǒng)

2016-01-05 13:43:37

谷歌Java競(jìng)爭(zhēng)

2016-11-09 16:55:01

2021-01-26 09:13:07

前端開(kāi)發(fā)者程序員

2012-08-22 13:34:30

移動(dòng)開(kāi)發(fā)跨平臺(tái)

2024-02-28 07:48:05

Rust項(xiàng)目框架
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)