2個最重要的非技術性的軟體開發技能
軟體開發是一項需要獨特技能的專業。然而,在我的職業生涯中,我開始欣賞優秀開發人員的兩個重要特徵,這些特徵根本不是軟體技術專業所特有的。
我發現這些特徵對我的工作非常有幫助,而且這兩個特徵都涉及到我不得不努力改進的習慣。
1.注重細節
為了獲得編譯的軟體程式,必須要做的事情很多。這就是為什麼對細節的關注在很多方面都非常重要,而且它通常是新開發人員學習的第一批技能之一。
在我的職業生涯早期,我經常過早宣佈工作完成。我記得有幾次,在讓我的團隊負責人知道我完成了一項功能後,他們會對其進行稽核並立即發現問題。即使程式碼執行得很好,我的拉取請求仍會充滿評論 - 可能是關於風格不一致或我忽略的優秀程式碼的其他特性。像這樣的情況往往是由於對細節的關注不夠。
軟體很複雜,其建模任務的業務邏輯也是如此。把事情做對很難。這需要大量的紀律和仔細的審查。
我使用的一些策略幫助我開發了高質量的程式碼,同時確保對細節的強烈關注包括:
- 測試 - 確保程式碼適用於完整輸入域的一種方法是測試它。通常,這意味著單元測試,甚至可能編寫測試驅動的程式碼。有時它意味著更廣泛的測試。例如,我真的很喜歡觸控測試資料庫或其他依賴項的測試。它們讓我相信我的程式碼是正確和健壯的。
- 自我程式碼稽核 - 第一個稽核我的程式碼的人是我 - 不止一次。我通常只為自己開啟拉取請求。我確保所有的變化都有意義。然後我確保我的程式碼在風格上與現有程式碼保持一致。你總是有一些預算可以抵消趨勢,但並不多。
- 功能審查 - 我總是確保審查我正在處理的故事或功能,以確保我的程式碼滿足所有要求和驗收標準。很容易迷失在實施中,錯過森林的樹木。有幾次我認為自己已經完成了,只是意識到我還沒有解決過這個故事的另一個需求。
- 記筆記 - 我嘗試記錄我在處理任何程式碼時所做的決定,以及它們的基本原理。現在很容易做出決定,只有在有人問你為什麼以你的方式實現某些事情時才忘記它。
2.耐心
大多數軟體專案需要很長時間才能正確編寫。
有些人將軟體開發與園藝比較。隨著花園的成長,控制花園可能很困難。有時候,你能做的最好的事情就是努力保持並保持良好的整潔。以同樣的方式,編寫軟體可能是一個緩慢而乏味的過程,並且在此過程中保持耐心至關重要。
在開發軟體時,最好的解決方案通常不是第一個想到的解決方案,也不一定是最容易實現的解決方案。到達最佳解決方案(或有時只是任何解決方案)可能很困難,這通常會導致沮喪。
有耐心並積極地看待挫折很重要。這樣做通常可以實現最大程度的學習,並且它將最好的開發人員與其他開發人員區分開來。有耐心也有助於防止你感到不知所措。
我不知道我是否有任何有用的技巧來培養耐心。相反,我認為接受編寫軟體會令人沮喪並且將會令人沮喪是很重要的。這就是你如何接受讓你成為更好的開發者的挫敗感。
軟體是一個擁有各種專業的巨大領域。要成為一個專家需要付出巨大的努力。接受緩慢的增量增長非常重要,只要有耐心,就會加入專業知識。
相關文章
- 識別不必要的複雜性是軟體開發中最重要的技能之一
- 軟體功能測試在軟體開發中的重要性。在哪裡做軟體測試?
- 無線覆蓋技術的重要性
- 2020年最流行的Java開發技術,最為主流的技術與工具你懂嗎?Java
- 敏捷開發大家談(三)--敏捷開發技術在電子商務軟體中的應用(2)敏捷
- 幽默:軟體開發技術中的縮寫短語 - Eleftheria
- 非梵藝術NFT數藏開發/系統技術開發/非梵藝術NFT模式模式
- NFT非梵藝術/數藏系統開發/非梵藝術技術開發NFT詳情
- 軟體開發2
- 非易失性記憶體技術及資料庫記憶體資料庫
- 開發直播app軟體除了技術還缺少一個“高效輔助”APP
- MQ系列2:訊息中介軟體的技術選型MQ
- 技術成長中的3個重要問題
- 基於軟體分析的智慧化開發新型服務與技術
- 【分享】具有“魔性”的通用軟體開發框架框架
- 讀後感二:技能與實踐的重要性
- 從高盛的技術“開源”看金融業軟體發展未來
- 2020年最流行的Java開發技術你不瞭解下?Java
- 泰山眾籌智慧合約軟體開發技術方案
- 去中心化社交軟體ktalk開發技術應用中心化
- Pi派幣挖礦系統開發軟體技術
- 雲算力礦機系統開發軟體技術
- 2個軟體開發原則如何挽救您的專案 -Jordy Baylac
- 高併發的核心技術 - 訊息中介軟體(MQ)MQ
- 譯:軟體工程師的軟技能(一)軟體工程工程師
- 和數軟體:以最簡單的方式瞭解區塊鏈技術區塊鏈
- 100 個容器技術相關技能棧
- 從ARM”斷供“華為看底層技術的重要性
- 10個最熱門的大資料技術大資料
- [技術思考] 軟體可測性分析和實踐
- 任務卷軸模式開發系統搭建軟體技術模式
- 協同軟體的實際應用和技術發展
- 學會軟體測試技術以後的發展如何?
- 什麼是中介軟體?系統整合商系統整合的重要工具和技術手段
- 區塊鏈技術開發談信任體系的開發潛力區塊鏈
- 技術硬核、體驗新穎……HarmonyOS開發者日最值得關注的點都在這裡
- 2022年最熱門的招聘技術技能是什麼,您絕對想不到
- 調製技術在通訊領域的應用與重要性