今天我介紹一個大神,熊節,從大學肄業到ThoughtWorks總監諮詢師,他從業18年,主導過華爲敏捷轉型。
熊節倡導的敏捷開發影響了包括我在內的一代程序員,1900字,開發者的核心競爭力是什麼,以下正文。
前幾個月我在美團做分享時問了個問題:
“程序員的核心能力是什麼?”
起因是我看到阿里的招聘要求是:掌握高性能、掌握高併發、掌握GVM。
現場我問,你們告訴我,你過去365天到底寫了幾回高性能、高併發的程序?這個GVM你調優調了幾次?結果沒1人回我。
幾年前我在 ThoughtWorks 管理100+人開發團隊,我經常問3個問題:
開發者的核心能力是什麼?
什麼決定團隊整體效率和交付質量?
爲什麼華爲、騰訊這樣的大廠,這兩年都在做敏捷轉型?
當時我團隊很多人,平時會刷題、背算法,至於理解需求、拆分任務、編寫測試、高質量的代碼實現——這些基本功、反倒不重視。
爲啥有人產出低、有人產出高?我覺得核心原因就是一句話:觀念落後、方法陳舊、但求偷懶。
有競爭力的開發者長什麼樣?
2016年我有一個搞敏捷開發的朋友,他就是屬於十人團隊裏速度最快的,大家一個禮拜的任務他拿1天做完,剩下4天就炒炒股。有這麼大的效率的差異,我還用講什麼架構、什麼設計,通通都談不着。
在18年反覆實踐中,我發現極限編程是唯一將開發技術實踐提到核心地位、並構建完整軟件交付流程的敏捷方法論,而TDD就是極限編程的“心臟”。
TDD要達成的是這三個目標:
第一,準確把握需求,開發的功能一定是客戶想要的;
第二,保障軟件質量,開發的代碼一定是有自動化測試覆蓋的。
第三,測試驅動開發,提高至少3-5倍開發效率。
TDD的核心在於嚴格規定開發節奏,一次把需求理清,一次做對、消除返工,因爲避免反覆修改帶來效率的大幅度提高。
這些實踐使開發穩步開展,而不至陷入混亂、救火、趕工和加班的泥潭,裏邊的核心原則是:
用測試準確框定需求範圍,幫助軟件設計逐步演進生長。
代碼有充分的單元測試覆蓋,爲軟件提供持續有效的質量保障網。
對出現“壞味道”的代碼進行無情的重構,不容忍低質量的代碼累積。
促進團隊內的人員流動,消除孤島和壁壘。
開發團隊重視設計的簡單性,保證代碼可測試、可理解、可瀏覽、可解讀。
面向對象設計有助於分離關注點和小步前進。
我的故事
我是熊節,前ThoughtWorks總監諮詢師,擁有18年從業經驗,翻譯過《重構》、《最後期限》、《與熊共舞》、《軟件工藝》等行業著作。
幾年前我領導包括華爲、中興在內多家企業的敏捷轉型,目前正致力於用IT技術在全世界最貧困的地區建設公共衛生、農業體系,用技術助力變革。
▲ThoughtWorks官網簡介
▲《重構》著作
我和890位開發者
10幾年前我把《重構》帶進中國,我希望能把敏捷開發推薦給更多的開發者,以TDD作爲切入點,訓練開發基本功,提高10倍開發效率。
4個月前,我和極客學院合作,訓練了890位程序員。
他們有在京東工作十年的資深開發,有中小企業架構師、有騰訊、今日頭條一線大廠的骨幹工程師。
有600+人每天堅持做學習記錄,他們真的很激動,因爲開發效率在以肉眼可見的速度提高。
▲心潮澎湃
我會很重視訓練,而不是講課,第一個項目叫FizzBuzz,一開始大家的平均完成時間在20+分鐘,很多人很不習慣。
▲打破認知
不習慣的原因是,我會監督你進行刻意訓練,在改變你的既有開發方法前,你會先陷入自我懷疑。
▲沉浸訓練
我倡導“實踐出真知”,每個項目你練8-10遍,我在微信羣隨時給你反饋。
刻意訓練—即時反饋—持續迭代,第一個項目叫FizzBuzz,大部分開發者會把時間從20分鐘壓縮到5分鐘之內。
▲效率提高一倍
第二個項目叫Args,訓練前一般你的完成時間是4小時。它會讓你找到感覺,明白TDD是如何做到提高5-10倍工作效率。
一開始你大致需要4個小時,最終你的完成時間大概會在27分鐘。
和我一起完成實戰營,你的收穫是什麼?
編碼節奏和思路更清晰了,原來想很久纔敢動手,現在5分鐘提交一次,有單元測試保證,根本不擔心出錯。
對任務的拆分有了更深刻的理解。很難出現那種動不動幾十行並且邏輯很複雜的代碼。
有了單元測試保證,下一步追求更簡潔,可讀性更高的代碼。
感謝這個訓練營,拯救了一個以爲會寫代碼的我,以後會在工作中更多的嘗試TDD,估計這輩子都離不開它了。”
——第二期學員 林澤歡
▲效率提高3-10倍
實戰營內容
21個線上任務,能力目標如上,完成時間 21-30 天不等;
訓練爲主,實踐出真知:文檔+視頻+直播+微信羣熊節老師答疑;
所有視頻均可回放,可根據你的工作安排時間,1年內有效,支持反覆觀看;
完成3個項目,如果你認爲沒有幫助,無條件退款。
你會收穫:
應用進工作中的TDD-測試驅動開發方法;
精準框定需求範圍,實踐小步快跑;
訓練開發基本功,重建開發流程;
提高10倍開發效率。
面向人羣
具備開發基礎,前端後端均可;
工作1-3年,想獲得更高效的編程方法;
工作3-8年,突破技術瓶頸跳槽一線;
技術leader,想找到提高團隊效率的方法。
▲不定期線下面基
▲結課證書
我經常引用《灌籃高手》安西教練的話:“投2萬個球吧。
當你完成20遍訓練,親身體會到開發效率提高,你才能真正理解TDD的神奇之處。
粉絲訂閱有什麼福利
12月26日(週四),第四期實戰營開營
21天訓練,原價179元,碼海粉絲拼團價99元
訂閱後再邀請好友結對訓練,立享50%返現
參加訓練,完成項目認爲沒有幫助,無條件退款
????掃描下方二維碼訂閱