
無瑕的程式碼本已是軟體工程師必讀作品,作者還出了本番外篇,專講職場做人處事,翻來看受益頗多。
看這本書感覺就像有個親切的老前輩,教導你職場要注意那些事情,想想自己大學畢業投入職場,不懂事硬碰硬,弄得自己一身傷,這樣的老前輩人人必須。
作品有些像懺悔錄,自己年輕時做得蠢事毫不猶豫寫出來,清楚寫出從屁孩走向成人之路,可讀性甚高。比如自恃功力高就不把公司規定當一回事,結果被開除。
還有一次作者在一家明知無望的公司當高層,燒光了第一輪投資,正在找第二三輪投資,每天高壓鞭策屬下、開除無法達到進度的員工,其實他自己都厭惡這樣做。直到有天妻子要他照照鏡子,他看到一個面目可憎的人,突然醒悟不能再繼續,於是辭職,開始做起顧問工作。
書中教很多有用的技巧,比如上級逼問你幾天可以交出程式時,作者建議保守估計,不能做出來就坦誠以告,讓主管能去找備援方案,這才是最負責任的作法。隨便說一個樂觀的日期,最後卻無法達成,是最糟糕的。這一點幾乎馬上就在我現實工作中用到了。
作者也質疑,醫師要經過多年訓練才能主掌開刀,為何大家會覺得工程師剛大學畢業就可以動手做大案子,覺得不可思議。
年輕時看到寫得很爛的程式會開罵,但職場滾久了,現在都覺得很可憐,因為職場願意培訓新人的意願不高,就像作者寫得那樣,所以這些新人就只好土法煉鋼亂寫一通,當然會給後續維護帶來困擾,造成很多不定時炸彈。
作者建議應該讓老人手把手帶新人,老人的身教,經驗與各種寫作習慣,對年輕人都非常重要。作者還推薦結隊寫程式,就是兩個人一起寫程式,雖然不符合工程師孤僻的習性,但結隊會指出彼此的缺點、建議,確實學得特別快。
作者建議應該把多人固定組成一團隊,一次完成一個案子,長久下來培養默契就會有驚人的效率。但常見公司的習慣都是一人塞多件案子,不同案子彼此干擾,打斷專一思考,造成效能低下,作者認為這很荒唐。
但通常這時公司高層會歸咎這名員工素質低劣,不會檢討自己管理問題,然後員工憤而辭職跳槽到別家公司,沒有這種畸形管理,又搖身一變成為高效員工,可見原因根本不在員工本身。
強力推薦這本書給每一位工程師。
作者 Robert C. Martin
出版社:博碩文化




























































































