程式設計師們發現老闆對他們手頭的很多工作都沒啥概念 – 對軟體開發來說,他們真得不該多上上心嗎? John Sonmez 列了一份簡短的清單。
正如博主 John Sonmez 說道的,但即使是最出色的老闆,似乎也常常總是不能理解軟體開發。聽起來熟悉不?
1. 技術債務極大拖累了專案
如 Sonmez 所提到的,管理層和其它非技術人員常常理解不了一件事,提高產量將不可避免的導致低質,從而導致技術債務的加劇。
確保你沒有殺雞取卵,你需要明白這一點。根據《高效能人士的七個習慣》作者 Steven R. Covey 的觀點,這意味著要在產量和產能之間保持平衡。
推薦閱讀:《趣文:用雞講解技術債務的形成過程》
2. 估算工期毫無意義
最近在 JAXcenter 團隊中關於預估是否有用的討論非常激烈。同樣來自 Sonmez 的觀點,他認為預估超過 2 小時就沒意義了。事情就是這樣,每個專案都充滿著各種未知,各種意外讓你防不勝防。
如果領導非要堅持估算工期,Sonmez 建議開發者要麼說服他們別做傻事;要麼把任務分解到足夠小,只對短期做預估。
推薦閱讀:《為什麼程式設計師總是不能準確估測專案時間?》、《趣文:為什麼軟體開發週期通常是預期的兩三倍?》
3. 你可以做得又快又好
這也算是個老掉牙的故事了 – 一個老闆給員工分配了一大堆工作然後告訴他們迅速做完。結果幾乎毫無例外地像擲骰子一樣。 因為很多程式設計師重壓之下選擇走捷徑,最終導致質量下降。這個Sonmez的眼中釘就是所謂的“程式碼牛仔”;飛速地完成工作, 卻將程式碼寫得亂七八糟,之後讓其他人幫他擦屁股。
Sonmez 給程式設計師們分享了一個非常棒的小貼士來應對這句“你可以做得又快又好”:最好拿出一些統計資料,以說明後期修復 bug ,比前期預防要耗費更高的成本。
推薦閱讀:《請非技術人員不要對技術人員說這很容易實現》
4. 有些程式設計師實際上在幫倒忙
有些程式設計師對團隊的拖累超過其貢獻,Sonmez 提到,這些人寫的每行程式碼,非但沒解決問題,反倒是製造問題。但誰會對自己的同事打小報告呢?Sonmez意識到了這點,不過,他還是堅持認為如果團隊中有害蟲,這麼做是解決問題的唯一辦法, 儘管這麼做會很難。
他認為,如果你不去舉報這種顯而易見的錯誤,那麼你就不稱職了。
5. 提高效率的方法有很多種,但好的裝置,才是投資成本最低的方法
一臺 5 年高齡的電腦,沒有第二個顯示器… Sonmez 聽到太多程式設計師抱怨他們摳門的老闆不願意掏錢升級裝置。與大多數高於平均水平的程式設計師工資對比,新裝置的開銷幾乎可以忽略,這是一種能迅速收回成本的投資。
即使一個開發者使用新裝置後僅將每天的工作效率提升了半個小時,硬體也是個不錯的投資。不過,Sonmez 說到,很多時候, 你能做的要麼想盡辦法說服老闆升級裝置,要麼換份有精明領導的工作。
推薦閱讀:《用4K電視做顯示器的程式設計師》、《顯著提升程式設計師身心健康和工作效率的裝備有哪些?》《我跳槽是因為他們的顯示器更大》
6. 新技術的風險沒你想得那麼高
早期的時候,專案經理認為框架應該少升級是合理的,那時候開源框架還很少並且一旦公司放棄支援,你就進退兩難了。 現如今的很多框架,基本上每天都會對程式碼打補丁,而且這些框架多數都是開源的。
其實,今天固守成見的使用舊技術風險反而更大,使用框架或老舊版本的庫很可能導致一些系統漏洞。轉變思路往往更明智。
7. 業務分析和專案管理沒……啥作用
這個觀點肯能有些爭議,但 Sonmez 堅信業務分析和專案管理毫無價值。前者是多餘的,因為開發人員與客戶直接溝通對雙方都更有益。如果你們是做敏捷開發的,後者則常常成為絆腳石。
如何讓老闆意識到這一點?你需要清晰的定義敏捷團隊如何運作及需要哪些角色。
你還有其它見解?在評論裡留言告訴我們吧!