會上,京東零售技術與數據中臺測試架構師任廣印做《文化建設踐行DevOps-Etsy持續交付之道》主題演講。任廣印指出,“在Etsy,工程團隊推行了各種文化建設,幫助員工成長,助力公司成功,主要體現在四個方面:
第一,放權和信任;
第二,集體責任;
第三,持續的學習改進;
第四,相互督促,結伴而行!
以下為任廣印演講實錄:
大家好,我是來自京東零售的任廣印,聽了陸怡頤老師的發言,有點小小的不贊同,陸怡頤老師剛剛說了我們測試行業這十多年并沒有改變,其實我們還是能感受到很多顯著的變化的,至少,十年前我做測試的時候每天5點半就能下班了,不是嗎?那么我們現在都是幾點呢?技術改變了,業務也改變了,那么,我們的能力和效率是否也對等的跟上了呢?
我今天給大家分享的主題是《文化建設踐行DevOps-Etsy持續交付之道》,提起DevOps我們往往會想到Amazon、Microsoft、Google、Netflix、AirBnb等先行者,Etsy其實也是先行者其中之一,可能大家都不知道它,可能因為這家公司的商業模式比較專,導致大家很少知道它。這篇分析報告出自我和我的小伙伴之手,在線下,我經常會和朋友們做一些相應的案例分析活動,從中學習這些公司的好的案例,見識其中的轉型契機和成長之路,不斷學習并提高認知。
我今天要講的內容一共分為5個部分,公司介紹、工程文化、商業模式、技術變革、質量保障,是一篇2-3小時的案例分析報告,因為今天的分享時間只有40分鐘,到場的主要是測試領域的小伙伴們,為此我調整了一下講述順序,以便將大家最關心的內容傳遞給大家。推薦一本書給大家《Effective DevOps》,這本書其中一個作者就是來自Etsy公司的。
首先我給大家分享一下關于“質量保障”這個話題。
在Etsy,質量保障團隊是這樣的,鼓勵大家保持不斷的學習、提高、交流。整個公司也很看重工作和生活的平衡,鼓勵大家高效的工作,公司不推崇加班,二是推崇在工作中更聚焦,把精力放在最該做的事情上。通過持續的學習,提升測試技能,改進測試策略,根據項目情況進行資源分配,一個質量小組通常會包含PQ分析、QA負責人、項目經理、測試開發等角色,這也正如剛剛陸怡頤老師所說的現在的一個趨勢,測試開發工程師的隊伍正在逐步的壯大。
在Etsy,都測哪些內容呢,我們常見的回歸測試、開發階段的測試、以及為了測試范圍、覆蓋率、測試結果趨勢等的數據而開展的一些測試活動,在我們的身邊也會有更多的外包資源,這些工作跟我們現在做的是比較相似的,但是這些事情在Etsy是不做的,在Etsy是不做這樣的測試的。那么大家可能會問,這些東西跟我們都很類似的事情,我們也覺得很正常的事情,為什么在Etsy并不是這么做的呢?那么在Etsy都是怎么做質量保障的呢?
在Etsy,新功能和新產品作為測試重點,會有對應的探索性測試,集成測試、跨平臺的兼容性測試,尤其會把測試精力聚焦在那些對用戶有影響的功能和改動上。
公司的商業模式的核心就是和社區聯系緊密,同時會及時的去響應去解決。針對不同角色的定義和培養上也是公司的一個很重要的投入,讓專業的人做專業的事情,正確的將事情做好,少返工,這本身就是質量的一層保障。從需求或者從一個想法的產生,到最終它的上線運營,每一個環節都能左右最終的質量,也就是說每一個環節的每一種角色,這個角色的專業度就能直接影響了這個軟件、這個服務在這個生命周期里它給下游交付的最終質量。當然了,貫穿始終的就是一些最佳實踐以及一些好的學習和成長,以及一些改進。價值驅動、目標的一致性和與社區的緊密連接,這三部分也是我們團隊的工作核心要素。
接下來看看這種文化是如何體現于工作中的。在生產環境我們同樣會做大量測試的,以此來消除可能在部署工程中出現的問題,正常來說我們做了很多測試,在部署到生產之后不應該再出問題,但現實是各個模塊或改動都是測試通過的,集成到了一起問題就出現了。無指責和無恐懼的文化,分析問題,查明根因,不再讓重復的問題再出現,是我們的目的,而不是定責。協作文化、高效的反饋,每個員工的職業發展通道,激勵和獎勵機制,各種途徑讓員工發揮出各自的能力,自治、高效彼此互助。
為什么我們會說在這個公司這樣的質量保障可行呢?很好的持續集成、持續部署流程,基于用戶研究的原型設計,在一個服務或者一個產品推出的時候做的A/B test,持續和用戶進行溝通確認和采集反饋,通過大量的實驗來證明我們這樣做是不是達到了這樣的效果,支持實踐,“復用一切有效的方案”,通過信息傳遞降低試錯的成本。
再說一些公司的“那些文化”。 說起文化,大家有的時候也會想什么是文化?什么是好的文化?什么是不好的文化?或者我們也可以理解成大家的一種習慣,或者大家都接受的一種習慣,這個習慣有可能能夠幫助公司成長或者說能夠幫助公司招攬更多的人才,當然一些不好的文化也會導致人員的流失或者阻礙技術的發展。
工程師文化,簡言之,我們可以理解為自由和效率;如果我們是不自由的,至少,我們在做事情的時候會限制我們的思想,如果不是對效率的提升,那么我們這個創新可能就很不接地氣,那么我們為什么做它呢?自由和效率我們又往下細分了一下,比如自由,我是一個自我驅動的,比如,靈活的工作時間和工作地點,關于自我驅動這件事情,包括工程師文化大家也曾有過一些討論,當我覺得這個事情有價值或者大家認可的時候,我是一個自驅的模式,會努力的把它做的更好。但是給我各種要求,“必須要996、必須不能幾點回家就在這兒坐著好好干活”,這個時候不但沒有讓我好好干活,反而影響了我的自驅性。工作效率體現在什么地方呢?曾經我待過的一家公司,老板說“休假不用和我請示,因為你請示了我也會批準,那就無需審批,但你需要發個郵件讓干系人知道。同時,信任是一種契約,不要打破”。
“Code as Craft”這是公司最核心的文化。
Etsy的目標是讓那些手工藝人,通過他的手工來給這些手工藝人提供交流和手工藝品買賣的環境,我們工程師也是,我們創造了這個工程師,并且通過哪些事情來很好的貫穿于我們的生活呢?這個公司就定義了“code as craft”!癱ode as craft”在這個公司也是一個活動,是每半個月舉行的一個活動,這個活動會邀請業界的一些大咖專家或者公司內部的大咖進行演講,通過這個過程我們使整個公司在提高,去交流,并且如果有好的方案大家也能產生一些更深層次的合作等等。像我們今天這個活動的意義也都是一樣的,我們先看一下這個公司邀請的這些大咖們,最右邊的圖,其中穿格子衫的就是這個公司的CEO查德迪克森,正是他的到來,為Etsy建設了這一些列的工程文化。
“無指責的問題分析”文化,我們很多公司都在做各式各樣的,比如,線上出了問題我們要復盤,或者出現重大的事故我們要分析,我們分析問題的時候很容易的牽扯到了責任,我們分析這個問題本身,我們是想知道這個事情是怎么產生的,而不應該關注是誰、他為什么做這樣的事情。我們分析的時候就是通過這種文化的踐行,我們能夠更好的挖掘出這個問題本身是怎么產生的,為什么我們不關注的“是通過誰來制造了這樣一個問題”呢,因為這個問題本身,它可能是系統設計的問題或者說各種深層次的問題,只是這個人他遇到了而已,如果他不遇到這個問題有可能就是你本人遇到這個問題。所以說公司一直在提倡一種無指責的問題分析,公司也是有一個開源的系統,這個系統是專門干這件事情的,目的就是,不要讓錯誤可以發生,我也可以接受,但我不接受重復的問題再次發生。
針對這個問題公司真的做了一件三只袖子的毛衣,其實在我們的印象中,我再怎么腦殘也不會做出一件三只袖子的毛衣,但是他會把三只袖子的毛衣頒發給一些犯了錯誤的員工,犯了什么錯誤的員工呢?可能這個員工犯的錯誤是最令人驚訝的錯誤,而不是說這個人是最糟糕的那個人。
轉載自:Testin云測