工程師的宿命
唉唉,看來我又被調降信用評等了。今天前輩跟我說,部門老大將原本由我負責的案子,轉畫在他底下。於是,我從一開始的同時擁有三個頭頭,到成為無兵之將,再到現在這樣,還沒正式公布,只屬一個頭頭。我知道,這其實不是壞事,我的未來,應該會好過一些。我也知道,這主要是因為專案性質改變的緣故,所以有所調整。但是,最後總歸是讓部門老大出了手,我的心裡,還是有些落寞。
確實,我是有很多「可是」的,但我也知道,這些都可以算是藉口...
- 文件上沒寫,誰知道 GetSystemTime() 在 WinCE 裡抓不出 milliseconds?配上 eVC 那超慢的 download 速度與超高的失敗率,以及 99% 會失效的 debugger,兩天的時間就這樣浪費掉了。
- Porting 當然是要按照原本 function 的 behavior 改寫,按照原本程式的介面邏輯,在目標平台找尋對應 API 完整重寫。這當然是「正確」的事,可惜卻是屬於「政治不正確」的一種。Conceptual Integrity 在某些目標導向的情境下,常常是可以被犧牲的一項。以結果論英雄以證明抄捷徑才是正確的,我可以預見未來必定沒有機會補洞,但我沒有權力反對。
- 有時候碰到那種,說起來很簡單,但其實挺複雜,但對主管來說,又只需要知道很簡單的部分的東西時,還真的是挺讓人無奈只好硬吃黃連的。結果可想而知:「這不是很簡單嗎?不就是在那段 code 的前後記一下時間,相減取得所耗費的時間,為什麼會搞得這麼複雜,還花上半個星期的時間弄?」是啊,但是我必須為了 porting 找解法、測試,為了讓結果能夠印出來,思考良久以決定究竟該不該打洞抄捷徑,更別提中間還穿插為了與正因興起而被大整頓的 Visual SourceSafe repository 之間同步程式碼,而不得不斷地被打斷的開發過程,以及額外支援的抓網站小程式。
- 平心而論,對於同期或後期的同事,基本上其實我確實是沒有把來自他們的 coding request 放在心裡很重要的地位。但相對來說,雖然說看起來我未來暫時只會有一個頭頭,實際上的情形仍然將會是,來自前輩的交辦事項,還是得認真回應。單一擋箭牌的好處在單一,但缺點也在單一。讓我感到落寞的,正是在此。花了一年學懂了在三個頭頭下做事的方法,可惜又花了一年,才從錯誤中領悟到無兵之將的真正意涵:無兵之將還是兵。未來我有辦法在一個頭頭之下,用對方法態度行事嗎?我不確定,在必須將大部分精力以工程師性格的方式展現的情境下,能有多少心思保護自己不再吃暗虧。
工程師的宿命是,要不就 work longer (加班),然後讓肝爆掉,要不就 work harder (拼命),讓胃穿孔。Work smarter 真的是藝術啊,還是讓別人的肝爆掉,胃穿孔才是王道。怎麼說呢?好歹自己也念了兩年資管,算是和管理有沾到邊了,然後這幾年看著老爸念 EMBA,我漸漸地有了這樣的想法:因為學管理的比較懂做人,所以作管理時就拼命地教下面學做人。會這樣想當然是覺得這是不對的,怎麼做事,和怎麼做人,是一樣重要的。問題只是,做事的人多半不懂得做人,而會做人的人,則多半不懂得做事,如果只是讓專業的傲慢決定做事或做人何者重要的話,那的確是會變成裡外不是人。
其實,「政治正確」我也不是嗅不出來,對於自保用的心機,我也不是一無所知。但在個性與價值觀的雙重作用之下,我也許還得再經過多年的挫折,才能學懂如何在專業的堅持與工作的目的之間取得平衡,又或是學曉如何放棄。



One Comment
Hi, jeffhung,
還是經常在掙扎麼?有空的話,來chip123找找看其他工程師的宿命?
Post a Comment