寫了15年代碼,我終於總結出提升10倍效率的三件事

2021-02-15 GitChat精品課

作者丨Matt Watson 

譯者丨roy

【譯者注】本文作者Matt Watson已經寫了超過15年的代碼,也由此總結出了提升10倍效率的三件事。Matt表示,一個10倍效率的開發人員很快就知道了他們需要做什麼,要問什麼問題,什麼時候不問問題,並且是掌握事件優先級別的高手。以下為譯文。

幾乎每個軟體開發人員或程式設計師都見過其他人編寫的代碼,說明了「任何人都可以編碼」。但你有沒有遇到過所謂的神話般的「10倍效率的開發人員」?作為一個10倍效率的開發人員,在編寫代碼方面做得很少, 更多的是知道要寫什麼代碼。

我們許多人開始編程的時候都有特定的目的。比如,我開始編程的時候,是讓我能在睡覺和在學校的時候自動玩那個文字版的MUD遊戲。我那時候是個寫腳本的13歲小孩,甚至不知道什麼是編程。我可能有一個想法,然後就寫代碼並測試 - 全部靠我自己。

當我們為其他人開發軟體時就變得很困難,因為我們常常缺乏相同類型的動機和興奮感,而它們驅使我們追求自己的願望。我們沒有自己的想法,而是花幾個小時在會議中嘗試了解這些想法,然後我們大部分時間都在修改別人的代碼 - 或者提交自己的代碼。這導致一定程度的隔閡,進而降低了生產率。

要成為一名10倍效率的開發人員,你必須學會在這種環境中脫穎而出,甚至創立自己的公司來領導這項工作。

任何人都可以是一個10倍效率的開發人員,至少在每一天的某個時刻。我相信所有開發人員都應該專注於提高生產力和團隊合作的三件事。

三件事

要成為一名10倍效率的開發人員,你需要幾年的工作經驗,無論使用哪種程式語言和工具集。你必須善於解決問題和編寫代碼;這是必須的。

重要的是你要明白,如何編寫代碼並不能讓你成為10倍效率的開發人員,10倍效率的工程師,10倍效率的程式設計師,或其他任何你想要的名字。

你知道5W:「誰(Who),什麼(What),在哪裡(Where),為什麼(Why),什麼時候(When)」。雖然這些都適用於軟體開發,我想關注那三個定義了10倍效率的開發人員的特點。這三項把普通開發人員與10倍效率的開發人員區別開來:

是什麼(What)

為什麼(Why)

什麼時候(When)

知道做什麼

在企業界,開發人員經常從事他們不太感興趣和不理解的項目。對於大多數開發人員來說,這不是一個大問題,只要他們收到了很好的指令,並且也得到了明確的輸出定義。

問題是開發人員通常沒有得到足夠的指令。相反,我們使用一種叫做 「敏捷開發」 的東西。我們收到一個記事帖,上面有幾個字,並指望我們知道到底需要做什麼。

軟體開發就是溝通。開發人員需要知道我們在做什麼,我們試圖解決什麼問題,以及到底需要什麼樣的結果。我們知道的越多,就可以更快的完成。最重要的是,知道工作的目的和什麼會使工作成功是很關鍵的。

水平差的開發者會在一個項目的錯誤方向上花幾個小時而不問任何問題。他們就是我所說的 負10倍效率的開發人員,因為他們一事無成,浪費了所有同事的時間。幾乎每個人都遇到過這些開發人員,與他們一起工作會讓人感到沮喪。你一定要小心,不要養成他們的習慣!

有些開發人員即使沒有很多細節也能很好地工作。他們有大量的創造力,並提出正確的問題。這些獨角獸可能是10倍效率的開發人員。他們知道如何解決問題,並經常提升整個團隊的水平。

最重要的是,10倍效率的開發人員真的很擅長快速地確定需要完成什麼和問什麼問題。

理解為什麼

也許軟體開發的最大障礙就是理解為什麼。如果你不明白你要解決的問題,那就很難解決了。

為什麼我在睡覺和上學的時候把幾個終端腳本放在一起玩MUD遊戲?當然是我想在比賽中達到最高級別。我清楚地知道為什麼,我盡我所能來實現目標。

同樣的方法也適用於任何軟體開發項目。了解他們所在的垂直行業和他們試圖解決的問題將會使開發人員更有效率。了解為什麼和理解垂直行業也有助於防止不必要的工作,騰出時間專注於那些會使產品或功能對用戶更有價值的事情。

問題是知道為什麼還不夠。作為一個真正的10倍效率的開發人員,你必須對這個問題有熱情,並從裡到外地了解它。我相信,大多數10倍效率的開發人員本質上也是產品人,具有良好的產品願景。

知道什麼時候做什麼

時間對於軟體開發項目非常重要。確定項目任務的處理順序看似容易,但卻非常關鍵。你的工作可以幫助公司獲取一個新客戶或者或清理掉舊的技術債務?

作為開發團隊,我們必須不斷地選擇我們要做什麼和什麼時候做。

所有軟體開發工作項目都屬於以下三類:

我們必須為客戶完成新功能。我們需要修復軟體中的 bug。我們想減少些技術債務或開發一些酷的新產品功能。這些都需要平衡取捨。

我們應該同時開展所有三個維度的工作項目。我們不能把所有的時間都花在技術債務上,但也許我們應該花一小部分時間在這上面。

開發人員還必須知道何時在其代碼中構建複雜的體系結構。我寧願保持代碼儘可能簡單,直到不添加架構就會死的時候我才會添加架構。

開發者也必須知道什麼時候避免追逐時髦的東西。他們傾向於使用新的工具和技術,但是這些東西可能只會減慢一個項目,而不是更快地完成它。

10倍效率的開發人員擅長於優先級排序,並了解何時將時間投入到架構中,而不是使用一坨義大利麵條般的代碼來實現某種工作。請記住,你的用戶並不關心你的軟體是如何工作的,也不管該架構有多花哨。他們只想它能解決問題。10倍效率的開發人員理解這一點。

掌握是什麼(What),為什麼(Why),什麼時候(When)成為10倍效率的開發人員

現在讓我們來談談成為10倍效率的開發人員的重要技能:掌握是什麼(What),為什麼(Why),什麼時候(When)。

從為什麼(Why)開始

成為10倍效率的開發人員的第一步是對你要解決的軟體和問題變得充滿熱情。你需要從裡到外完全理解它。這首先是要對你工作的公司及其使命充滿激情。

不要因為別人告訴你要寫一個按鈕(button),然後你就只寫一個按鈕。努力在更高層次上去理解為什麼(Why)。如果你持續關注為什麼,你對你的團隊和公司會有更大的價值。

做一個好的開發者和優秀的問題解決者,而不是最好的程式設計師

我會把自己描述成一個黑客開發者。我是那種能很快把一些醜陋的代碼拼湊起來並解決幾乎任何問題的人。我的代碼很少是美麗的,但它能解決問題。這才是最重要的。

你不必編寫完美的代碼與單元測試來成為一個10倍效率的開發人員。你需要知道什麼時候要做和什麼時候不做這些事情。

一個10倍效率的開發人員擅長解決特定的問題,並通過代碼滿足業務需求。你能做的最聰明的事情就是在你把項目交給其他人(他們更善於最後敲定一些架構和其他一些細節)之前就知道它能走多遠。

什麼時候(When)在你的內心,或者不在

知道什麼時候要建立一個複雜的架構,而不是拼湊一些東西,需要經驗和你蜘蛛俠般的感官。你要麼有這種感覺,要麼你根本不知道。

我曾與一些最聰明的開發者共事過,他們總是很糟糕的優先考慮模式和架構,而不是功能和排期。他們總是過度實現或者一遍遍重構,爭取 「完美的代碼」,而不是 「可交付的代碼」。

10倍效率的開發人員必須利用他們的經驗和本能來知道什麼時候要專注於架構和完美,什麼時候就是把事情搞定。

知道該做什麼(What to Do)和該問什麼(What to Ask)

許多軟體開發歸結於溝通技巧。可惜的是,在我們要工作的項目上許多注釋和要求都不是很詳細。一個10倍效率的開發人員知道如何閱讀這些,應用他們知道的業務裡的 「為什麼」,並提出相關的問題。

最好的開發者知道在尋求幫助之前要在某件事情上花多少時間。他們也知道要問什麼問題,以闡明需求來推進項目。

結論

我已經寫了超過15年的代碼。可以說我是一個10倍效率的開發人員,或者至少我能。我知道我擅長什麼,當我做我擅長的事情時,我可以很快地完成大量的工作。

如果你想做一個新產品的原型,我就是你要找的人。如果你需要尋求Angular,React或其他一些 前端的幫助,我絕對不是你要找的傢伙。在這些任務上我將是一個負10倍效率的開發人員。

10倍效率的開發人員不是一個神話。他們確實存在。他們很可能是開發經理、架構師、首席開發人員或公司創始人。如果他們不是的話,他們應該轉變。我後來成為了公司的創始人,到現在為止都兩次了。

當然,沒有人能在每一天的每個時候都是一個10倍效率的開發人員。我們沒有精力或專注力每天以這樣的速度工作。我們不是機器人。

如果你理解軟體開發的 「是什麼(What),為什麼(Why),什麼時候(When)」,你就可以是一個更有效率和更好的團隊成員–甚至是一個每天幾個小時內的10倍效率的開發人員。這會有很大的不同。

相關焦點

  • 有道詞典筆詳細評測――它真的可以提升15倍查詞效率?
    有道詞典筆詳細評測――它真的可以提升15倍查詞效率?傳統詞典需要一頁一頁翻,電子詞典要一個一個敲字,查詞效率都不盡如人意。 為此,網易有道推出了一款號稱能提升15倍查詞效率的「有道詞典筆」,今天小編就來全面評測一下這款產品是否能幫助學生更有效地學習。 一、外觀 這款產品有灰色、銀色、粉色三種顏色可選,本次測評使用了最常見的銀色款。
  • 《清單革命》:收入提升200%、10倍提升工作效率的7個策略
    文/鏡曉嫻有什麼方法可以10倍提升工作效率?答案其實很簡單,就是清單工作法。但一定會有人說:「清單好像沒什麼用。」我能理解你的感受,因為曾經我也認為清單沒用,但當我按照《清單革命》這本書中的方法後,我的工作效率開始大幅提升。我才發現以前使用清單的方法,大都是無效的。
  • 如何在較短時間內,提升10倍工作效率?
    可能以前在身體狀態好的時候,一天能完成10件工作,而在身體狀態差的時候,也要求自己完成10件工作,你說這樣做現實嗎?那麼,該要如何解決這個問題呢?今天的文章,主要分享一個從鄭老師那邊學習來的做事方法,並進行了相應的優化,可直接拿出用。
  • 做好九件事,讓我提高效率
    也有例外,當我外出旅遊或者有朋友在我家的時候就沒法在11點前入睡。這種情況下,我會調整起床鬧鈴,確保睡足7-8個小時。因為我知道當我的睡眠時間少於6個小時的時候,一整天都提不起精神。我認為不同的人有不同的睡眠周期,以提高辦事效率。我是早起者,喜歡在早上完成工作。我有個室友平時凌晨三四點才睡覺,下午兩點起床,午後小睡一會兒。
  • 慢工出細活?老闆不同意 記住3個詞,效率翻10倍!
    想要獲得青睞,那麼就不得不提升你的效率。「慢工出細活」已經基本不適應這個社會大部分領域了!學會下面3個詞,讓您的工作效率提升10倍!當接到領導安排的某項工作任務時,絕對不能敷衍聽聽了事,哪怕他話嘮、離題萬裡的時候,因為指不定你會漏掉某個重要的問題。更不能不懂裝懂、只敢點頭、不敢提問,對於不理解的地方一定要當場問出,這樣會大大降低後續的溝通成本和減少出錯機率。被領導認為理解能力差(相反大部分領導會認為你更加嚴謹)和工作能力差,這樣的選擇題,我相信所有職場人都會做吧?
  • 相見恨晚的高效筆記法,讓學習效率提升10倍!
    沒有留出空白區,方便日後做補充我在娃新學期的筆記本上發現了一句話,應該是老師說的,特別好:「做筆記,不是抄筆記」。終於有老師在講筆記的問題了,好激動!第一個層次,抄筆記。像我上面發的專業課筆記,純粹屬於抄筆記,就是老師在黑板上寫一句,我抄一句,老師寫一黑板,我記一頁紙,跟複印機沒啥區別,注意力全在「寫」,生怕落一個字,聽進腦子多少就不一定了。就像往網盤裡存資源似的,所謂「存了就是學了」。第二個層次,記筆記。
  • 學會這一招,能讓你的效率提升3倍!
    但是老闆他並沒有放棄,每天在晨會上堅持給我洗腦,強勢安利他的時間管理工具,一副你不聽我就煩死你的態度。後來我被逼無奈終於去試了一下,發現,啊,真的,每天多完成的工作翻了3倍啊!關鍵是不用再熬夜了,還有了整塊時間來休息。
  • 老師轉發家長群:睡前花15分鐘做好4件事,成績一定會提升
    老師轉發家長群:睡前花15分鐘做好4件事,成績一定會提升老師轉發家長群:睡前花15分鐘做好4件事,成績一定會提升老師轉發家長群:睡前花15分鐘做好4件事,成績一定會提升我明天的學習目標是什麼?2. 為了達到目標,明天的時間怎麼安排?3. 我明天最重要的三件事是什麼?4.
  • 萬字乾貨 | 如何提升獲客效率?這幾個秘方讓你轉化率提升10倍
    運營的轉化效率能帶動的是整個公司業務的規模和利潤,我們通過研究轉化,讓業務流轉更有效率,讓運營補貼更有效率。用更少的錢獲得同樣的效率,把剩下的錢去投入更高的效率。我認為這樣才是良性的循環。 我今天將會通過四個部分指出運營轉化的底層邏輯和抓手。分別是: 1、如何提升獲客效率?
  • 考研英語閱讀理解複習效率低,該怎麼辦?學長:做好這三件事
    於是陷入了對考研英語的焦慮,對考研英語閱讀理解複習效率低,不知道怎麼辦。作為考研過來人,曾經考研英語成績不錯,在此總結了一些自己覺得有用的經驗,希望對大家有用。具體來講,考研英語閱讀理解要提高複習效率,要做好這三件事。第一件事,考研英語單詞要過關。
  • 年終總結|賈伯斯告訴我的三件事
    剛好,我這一年又瞎折騰了很多事情,只有折騰起來了,才會知道真正的困難和瓶頸是什麼,也才能更加深刻地體會賈伯斯的成長——雖然我這一年沒有做出什麼大事,但是這種如海綿吸水般快速成長的過程著實令我興奮。回顧自己的經歷,附上我對賈伯斯成長的思考——「賈伯斯告訴我的三件事」。(看完視頻再來讀文章體驗會更好一些,因為有了身臨其境的背景知識。)
  • 如何提升做事效率,讓你一天多出幾個小時?
    文章大約6000多字,相當長,為《燃爆效率力》專欄分享之一,這篇文章是我本人親自實踐多年的方法論,讓我的工作和生活的效率翻了3倍不止,閱讀需要你集中注意力,不建議碎片化時間閱讀。2.統籌方法的核心就是: 梳理出一件事情的執行流程,通過調整每個流程的執行邏輯順序,有序的處理任務,以達到讓時間效率的最大化目的。就像上述案例中,你在燒水的過程中,把其他的事情做了,不需要等水燒開之後再去手忙腳亂的去洗茶壺、茶杯和拿茶葉,如此一來,你做事的效率自然會大幅度的提升。到了這裡,我們知道了什麼是統籌方法,那麼我們怎麼去運用統籌方法,來提升我們的做事效率呢?
  • 扎克伯格親自做了26張PPT,工作效率提升10倍,已被瘋狂傳閱
    圖片來源:圖蟲創意來源丨長江商學院「我真的想簡化我的生活,除了如何最好地服務於這個社區,在其他事情上,我只能儘可能少地做決定。提高員工的工作效率,是管理者的永恆主題,也是企業降低成本、提高競爭力的有效途徑。工作雜、線條多、任務重是工作常態,如何從源頭上提升工作效率?看看這位CEO以身試錯後總結的黃金法則吧。
  • 試試「三隻青蛙」法則,提升孩子做事效率
    2.孩子沒有時間觀念在孩子的認知中,對於時間的概念認知是逐漸形成的,也就是說,孩子需要在生活中慢慢分辨出10分鐘和20分鐘的區別。時間概念建立不全使孩子無法感受到時間的緊迫,自然在行為上會有些拖沓。美國時間管理大師根據多年的時間管理經驗,總結出了三隻青蛙法則。他把一天中最重要的三件事比喻成了三隻青蛙,然後把完成事情的動作比喻成「吃青蛙」,這是一個很有趣味的時間管理理念。最難以完成的事情被看成是最大的青蛙,也就是最值得一吃的那隻。
  • 10月份又有公務員考試!出公告前這3件事必須知道
    隨著甘肅省考筆試成績的發布以及面試的陸續進行,很多小夥伴儘管取得了高分但仍遺憾未能進面,不要氣餒,10月份馬上就又有一次面向全國的公務員考試啦,沒錯,就是一年一度的國家公務員考試,往年一般是10月中下旬報名,持續10天。各位已經經歷過省考的小夥伴再戰國考也是很有優勢的,所以一定要抓住機會,趁早備考!
  • 《子彈筆記術》:3個原則助你工作效率提高10倍
    我有個特別的習慣,從小記筆記都特別認真,其實那些未必是我想要的。工作後一直悶頭記筆記,又臭又長,到最後自己都沒有耐心看下去了,與老闆匯報時,沒有側重點,還沒聽完就被打斷。直到遇到杉野幹人《子彈筆記術》,我才真正意義上掌握一項超強筆記術,工作效率提升到原來的10倍以上。《子彈筆記術》作者杉野幹人,從500餘位矽谷創業者的企劃案中,總結出一套適合職場,學習、演講的子彈筆記寫作技巧,並在之後的諮詢工作中,運用自己所掌握的子彈筆記術完成了300次以上的演講。
  • 4招讓你閱讀效率提升10倍
    有朋友給我留言,說,楊老師,我讀書的速度很慢,而且容易走神兒。怎麼辦?還有人問我,老師你每個月都要讀那麼多的書,怎麼讀得那麼快?現在把自己的經驗總結一下,在這裡給大家支支招。我讀書快可是好多年的習慣了,記得小學五年級放假的時候,我二天讀完了《西遊記》,三天讀完了《紅樓夢》。後來讀言情類、武俠類的小說,基本上是半天「吃掉」一本。這麼快,效果會好嗎?後來大家在一起談心得,比那些讀了一個月的人還明白。那麼,是什麼方法能夠讓我閱讀的「效率提升十倍」呢?
  • 如何用語音寫作提升學習質量和效率?
    01通過自我對話了解自己我在語音寫作的時間和空間裡,有一些跟自己面對面溝通的時間,也讓我越來越敢於面對自己,沒有那麼害怕犯錯誤了。我越來越知道自己是不完美的,能夠接受好的一面,也能坦然面對脆弱的一面。02提升寫作效率3倍以上語音寫作大大縮短了我的大腦到手的距離,讓我通過語音輸出,提高寫作效率三倍以上。
  • 30天之內提升效率,34個簡單可行的辦法
    為此,關注技能發展的Danny Forest總結出來34個簡單可行的效率提升之道,大部分馬上就可以踐行。你不妨去試試吧。原文發表在medium上,標題是:簡單可行:30天之內提升效率的34個辦法幾周前,一個朋友過來找我,因為他覺得自己的工作效率沒有達到應有的水平。儘管國務我已經多次寫過關於生產力的文章,但我並不想再把我過去寫過的這方面的眾多文章指給他看。
  • 語寫第662天,為什麼做事三分鐘熱度的我,會離不開語音寫作?
    隨著科技的發展,直接把所思所想,通過語音輸出的方式轉化成文字,效率提升三倍甚至十倍,大大節省時間。為什麼要語寫?語寫規劃未來在語音寫作的過程中,思考並預演一遍明天會遇到的問題。為什麼要做這件事情?可能遇到哪些難題?自己的優勢是什麼?又會面臨哪些機遇.......