一直都很喜歡《重來》系列,最近出了《重來3:跳出瘋狂的忙碌》,第一時間在微信讀書中閱讀了,讓咱們印象比較深入的就是「冷靜」和「效率」,本文主要說說效率的問題。後端
書的做者是賈森·弗裏德(Jason Fried)和戴維·海涅邁爾·漢森(David Heinemeier Hans-son),37signals 公司的創始人。他們推崇的一些理念和企業文化是不少國人所羨慕的,好比:微信
在不少人看來這些作法是難以想象的,即便是這樣,這家公司從創業開始起就是持續贏利的。說明即使是遠程辦公,即使是不用 996 ,他們也能進行高效的協做和產出。這種高效是咱們須要思考和學習的。架構
因爲一些緣由,一個項目幾經周折,最後由產品團隊來進行收尾,我也參與了部分代碼的編寫和一些遺留 Bug 的解決。固然也少不了加班加點,最近項目告一段落,思考下來,頗有感觸。學習
技術人的目標是要實現業務,因此要充分理解業務,再厲害的技術也是爲了實現業務目標,不然就沒有價值。理解業務才能作好規劃和設計,才能以高效率的方式去編碼,才能減小反覆。測試
道理誰都明白,但一作起來,很容易只管技術細節,包括一些高級開發人員也是如此,最直觀的體現就是:開發完功能,但不知道功能是幹嗎用的。脫離了客戶真實的使用場景去思考和驗證,全部的點都完成了,面不必定是完成的。編碼
我認爲不論是哪一個級別的開發人員,都應該對業務有深入的理解,才能事半功倍。架構設計
沒有哪一個項目是不」急「的,越急越容易亂,越急越容易採用看起來很方便的方式去行事,由於梳理業務須要花時間、代碼的架構設計須要花時間、先後端的規範定義須要花時間,最終就是鈍刀子砍柴,又累又慢。設計
持續下去就會變成一種進退兩難的境地,想重頭進行梳理和調整,又怕」浪費「更多的時間,維持現狀只會作更多的無用功。資源
因此,一旦發現有這種」急「的徵兆,就必定要先冷靜下來,作好規劃和設計,再動手也不遲。不少時候」急「只是咱們爲本身偷懶找的一個藉口而已,相比較分析、規劃、設計、直接寫代碼是相對容易的事情。開發
開發人員一般都很是的自信,會很乾脆的回答:問題搞定,絕對沒有問題;此次真的沒問題了。話音未落,測試就已經發現業務走不通或者其餘的關聯點又壞掉了。
代碼寫完就等於功能作完了,這是一個很大的誤區,一種狀況是業務不瞭解,不知道怎麼驗證;另外一種狀況是想着反正有測試,提交代碼讓測試進行驗證。我對測試的理解是:
每一個人都應該對最終結果負責,有責任和義務對本身的代碼按照業務的角度去進行自測和驗證。盲目覺得快速提交代碼就是效率高,卻不知,不停地反覆,會形成多方資源的浪費,效率低下。
任何事情再怎麼分解,都須要團隊協做去完成,說團隊的執行力不行,緣由必定不是團隊成員,而是團隊 Leader ,目標是否是分解的很清楚,好比說:張三,你下樓去買點水果上來,只要張三有錢、能走路、知道水果攤在哪,就能去執行。因此,只要知足下面兩點,就不存在執行力的問題:
目標清晰體如今雙方的理解能夠達成一致,因此須要儘量的細化,越是宏觀的,抽象的,不一樣的人理解就會不同,理解不一致形成的反覆是低效的一個很重要的緣由,因此這一點很是重要。
有能力作到,須要 Leader 對成員有足夠的瞭解,可以根據輕重緩急合理地分配任務。能讓每一個人既能勝任,又有所挑戰,是一件挺難的事。
最後說說干擾,在《重來3》中也提到上班時反而無法完成工做,
問問人們在必須完成工做的時候會去哪兒,你極少能聽到這個答案:辦公室。沒錯。當你必須把工做作完的時候,你極少會去辦公室。若是必須去的話,也是在清晨、深夜或週末的時候。只要>是沒別人在的時候就行。而在這種時候,它甚至已經不算是「辦公室」了,只是一個無人打擾的安>靜空間。
常見的一些干擾:
曾經一段時間,我大部分的工做是下班後完成的,一天下來,回想一下,好像很是的忙,但又感受什麼事都沒作。固然面對上面的一些干擾,也有一些解決方法:
做爲一個技術人,要想辦法去」偷懶「,正確地去」偷懶「,找到」偷懶「的途徑和方法,這個過程是困難的,須要不斷地思考、總結、實踐,等真正學會了」偷懶「,也就高效了。