每次在校園演講時,很多職場新鮮人都會有人問我這個問題。我的標準答案都是當然可以。其實會說話比會寫程式的專案經理更重要!!我自己就是一個典型不愛寫程式、也不會寫程式的專案經理。在我將近24年的軟體生涯中,常看見很多技術能力很強的工程師,因為技術能力強,又有”客戶永遠是對的”的迷思,再加上懶得多說話,反正客戶想要甚麼就幫忙做甚麼,往往這樣的人能在規模小的專案上獲得很多的讚賞。也因為技術能力強,做得快,替客戶額外多做而造成的成本增加比較不明顯。這種人因為口碑佳,很容易就晉升到專案經理。
這樣類型的專案經理對於開發專案總是抱持著”客戶永遠是對的”、”拚了!客戶需要甚麼我就做甚麼”,這種人的特質不太在乎和客戶做細部功能的文件規格確認,因為他心底就認為客戶一定會變,變了再來改就好。在小型專案因為範圍小,又能幫客戶多做一些其實無傷大雅。碰上大型專案時,這樣類型的人當專案經理就很容易變成”將帥無能,累死三軍”的將領。
大型專案因為範圍大,本身需要的專案成員就多,而團隊中不可能每個成員都是超級菁英。當專案經理覺得”沒關係,幫客戶改一下”、 ”沒關係,再多增加幾項”,習慣性地答應,一項一項的累積下來,客戶也被寵壞了,覺得甚麼都可以”再改一下,再加一點”,”為什麼OO可以改,而XX就不能改”。但當專案團隊成員技術能力沒他強時,就很容易會陷入改不完的窠臼,或者是改A錯B,影響C。變成怎樣都修改不完的無窮迴圈,讓團隊筋疲力竭。
但超級重點來囉,客戶的需求是沒有停止的一天,一開始客戶會感激你幫他改。但當每天一直增加時,需求答應多了,客戶會開始覺得這些都是”基本”,前面哪管你吸收了多少項,只要後面少答應一項,客戶就覺得是你的錯。因為這時他已經覺得他說的都是對的!結案就更是遙遙無期了。成本=人力*時間。乘法結果下,成本就很容易無限擴張。
再加上原本的專案時程應該進行到結案階段,這時公司通常會再接其他專案,需要調走一些人力,若舊專案未能及時結案,舊專案的人力就會無力cover,人員痛苦指數上升、缺乏成就感,流動就此開始。
新人來接手時,更容易被客戶抓到把柄,先被客戶嫌棄專案團隊流動率高,再被嫌棄需求要重講一次,或者趁機來個否認先前的需求,或者說”以前誰誰誰答應了我甚麼,你要兌現”,真的就像惡夢一樣的纏身。
說實話,誰倒楣?負責接手的人真的就是天字第一號倒楣鬼 ,要承擔以前所有過往的業障,還會面臨專案成本超支,公司無力發出獎金….
所以比起來,我更喜歡與欣賞願意不厭其煩與客戶溝通的專案經理。我常說,我寧願多溝通一小時,也不願讓工程師多花十分鐘改需求。因為當專案規模越龐大,就像蓋房子一樣,各種管線眾多,因為有時沒想清楚的改,很容易就會坍塌,一時的好心造成自己的無窮無盡的災難,誰會同情你呢?
這是一種領導風格,當專案經理的理念是很願意花時間溝通,團隊成員也會跟著願意花時間溝通。不是技術不重要,而是溝通才是專案致勝的關鍵。