12年程式設計師職業生涯得到的12個經驗教訓
我已經在ThoughtWorks工作了12年。是不是有點不可思議?回首我的職業生涯,我想寫一寫我在這些年中經歷的困難,以及總結得到的12個非常重要的經驗教訓。雖然我只選擇了12個,但其實遠遠不止這個數字,但是我覺得12年12個經驗教訓更有韻味。
1.工具不能代替思考
在我多年的諮詢工作和與許多組織和管理者的共事中,我發現了修復問題的共同套路,那就是管理人員相信工具可以“解決”給出的問題。當問題域被理解透徹,並且不可能有很多例外,以及每個人的行為方式相同的時候,這樣的做法很管用。不幸的是,很多現實問題並非如此。
太多次我目睹管理者使用組織範圍的工具鎖定到特定的工作方式。自然,該工具未能解決問題,並且阻塞了工作的真正完成。工具應該是用來提供幫助的,用來幫助防止已知錯誤的,並幫助我們記住重複的任務,而不是取代思考。
2.除非管理小組能夠真正懂得敏捷“轉變”的價值,否則它就不能發揮作用
許多管理者都犯過這樣的錯誤,那就是認為組織的其他部分在做出改變的同時,只有那些參與工作的人才需要“接受敏捷”。在企業中做這樣的統籌需要花費大量的時間和技能,因為你要關注於同步組織在不同水平的變化。
那些想要組織的一部分接受敏捷的組織面臨著真正的威脅。正如有句話所說,“要麼改變組織,要麼改變組織的方式。”
3.學習需要一個安全的環境
學習的必要經過是犯錯誤。在德雷福斯模型中,這意味著,特別是位於高階初級階段,人需要透過犯錯誤來學習。但是,當人們覺得犯錯會對工作造成壞的影響,會失去同事的尊重或在過程中會傷害到其他人時,那麼他們就不會冒犯錯的風險。
因為我熱衷於教和學,所以我想辦法創造了一個安全的失敗空間,在這裡失敗的話,可以透過犯一些基本的錯誤來學習。
4.每個人都可以成為領導者
我以前寫過這個話題的內容,因為這是一個非常重要的觀察結果。我看到的一個常見的思維模式陷阱是,人們覺得為了像一個領導,你需要去擔任領導的職 位。但其實人們可以展示他們的領導力而不論其頭銜如何,並且可以透過很多不同的方式做到這一點,只需在沒有明確期望或要求的事情上採取行動。
5.架構師去寫程式碼往往能作出最佳決策
在我執行的Tech Lead courses中,我提倡技術領導者至少將他們30%的時間用來寫程式碼。花時間於編碼上有助於建立信任,尊重和理解當前的系統。在做架構決策時,不考慮到當前系統的約束條件往往會造成錯誤的決定。
6.改變需要勇氣
我記得曾有人談論過XP values,其中有一點就是勇氣。勇氣是領導時所必須的,因為你要冒失敗的風險,以及嘗試一些新事物的風險/回報。沒有風險,往往就不會有很大的回報。
7.建立信任的關鍵是言行一致
有這麼一條古老的箴言,“依其言而行事,勿觀其行而仿之。”在現實中,不管你說什麼,人們首要的是會記住你是如何行動的。你得始終記得要言行一致。不一致的言行會損害相互之間的信任。說“no”或“現在不行”比答應做一件事卻沒有辦到要好得多。
8.成功的結對程式設計與良好的協作相關
雖然不是所有的結對程式設計環境都是健康的,但是我相信,當結對程式設計有效工作的時候,團隊往往具備一種更好的協作文化。許多開發人員更喜歡(長期)branch-based development的反模式,因為它推遲了反饋和潛在的衝突來源。
我把(可導航的)衝突當作協作團隊的一個健康標誌。推遲反饋,例如長期分支程式碼審查的情況往往會導致更多的不滿,因為它交付得這麼晚。
9.多模式思維促進更強大的結果
我在大學中最喜歡的科目之一是哲學概論,在那個學期中我們每週都會研究不同的哲學家。在我職業生涯的過程中,我漸漸體悟到多樣性的價值,並且開始透過多個角度來看問題。系統思想還認識到,事實可以用不同的方式來解釋,從而促進產生新的想法或解決方案。
10.認識到每個人都有不同的優勢
每個人都是獨一無二的,每個人都有自己的長處和短處。雖然我們傾向於尋找志同道合的人,但是擁有廣泛優勢的團隊才能走得更好。這一區域中的優勢可能 會成為某個上下文中的弱勢,所以當團隊成員擁有更廣泛的優勢時,團隊會變得更強大。雖然優勢的差異可能會導致衝突,但健康的團隊會接受彼此之間的差異,而 不是憎惡差異。
11.終身制學習
世界在不斷的變化,我們總有機會去學習一些新的技能、技術和工具。我們甚至可以去學習如何善於學習,有很多書籍,例如《Apprenticeship Patterns》和《The First 20 Hours》可以教你怎麼做好這些。
12.積極的影響迸發幸福感
《Drive》,一本膾炙人口的書,談論了人們如何透過朝某一目標前進而生出幸福感。根據我的經驗,幫助別人找到解決方法,對他們產生積極的影響,才是幸福的源泉。
結論
以上這十二個要點並非我在ThoughtWorks的12年時間裡所學到的全部經驗教訓,但它們確確實實是幫助我為客戶服務的比較重要的經驗教訓。
翻譯作者:碼農網 – 小峰
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31098481/viewspace-2079018/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 12年程式設計師得到的12個經驗教訓程式設計師
- 從我一年程式設計生涯中得到的經驗教訓程式設計
- 程式設計師職業生涯程式設計師
- 程式設計師生涯,學到最重要的6個教訓程式設計師
- 5年程式設計師生涯,我學到最重要的6個教訓程式設計師
- 話說程式設計師的職業生涯程式設計師
- 一個有40年編碼經驗的老外程式設計師的職業經驗程式設計師
- 給年青設計師們的10個經驗教訓
- 10+年程式設計師總結的20+經驗教訓程式設計師
- 七年之癢!一個 PHP 程式設計師職業生涯的自述PHP程式設計師
- 10 年 Amazon Web Services 總結得到的 10 個經驗教訓Web
- 10+年程式設計師總結的20+條經驗教訓程式設計師
- 12年經驗老程式設計師5次轉型程式設計師
- Github 對程式設計師職業生涯的影響Github程式設計師
- 程式設計師職業生涯中的 Norris 常數程式設計師
- 我的程式設計職業生涯程式設計
- 淺談程式設計師職業生涯規劃程式設計師
- Java程式設計師—Java職業生涯規劃Java程式設計師
- 十年的程式設計師:最危害程式設計師職業生涯的三大觀念程式設計師
- 10+年程式設計師總結的20+條經驗教訓(轉)程式設計師
- 趣圖展現程式設計師職業生涯的11個階段程式設計師
- 27歲程式設計師職業生涯的“中年危機”程式設計師
- 寇衛東:話說程式設計師的職業生涯程式設計師
- 一個程式設計師的創業失敗教訓程式設計師創業
- 30多年程式設計師生涯經驗總結程式設計師
- 年長程式設計師,壞習慣在扼殺你的職業生涯程式設計師
- 程式設計師的十大經驗和十大教訓程式設計師
- Go 併發程式設計中的經驗教訓Go程式設計
- 做任何職業都不要做程式設計師,特別是Java程式設計師,血淋淋的教訓程式設計師Java
- 技術從業者的經驗和年齡-程式設計師的職業規劃程式設計師
- 回顧15年程式設計師生涯,我總結的7點經驗程式設計師
- 19歲程式設計師在谷歌學到的5條經驗教訓程式設計師谷歌
- 當心!程式設計師在職業生涯中最易犯的7個錯誤程式設計師
- 分享8年開發經驗,淺談程式設計師職業規劃程式設計師
- 程式設計師的職業生涯能有多久?不做程式設計師了還能做些什麼?程式設計師
- 17 年程式設計生涯的三大經驗總結程式設計
- 17年程式設計生涯的三大經驗總結程式設計
- 對於程式設計師職業生涯的一些討論程式設計師