軟體開發人員努力的方向分類:職場
觀察一般軟體開發人員已經有十年左右了,給我們一般人的印象是,有理想、自戀、不妥協,而偏偏在這個時代要完成一個好用的軟體系統,這三個優點恰巧成為團隊合作的致命傷,所以通常一個技術性高的研發人員常常被貼上為不合群的標籤,而技術性不怎麼強的人也因為團隊EQ特別高而常常會有錯誤的評斷。
如果我們簡單的把技術力與完成力這兩個面向的拆開來看,技術力指的是程式語言(C++,JAVA,VB...)的使用熟悉程度、系統架構分析的能力、開發平台的使用(OS,SQL Server...)、看見未來的發展等等,選擇對的技術方法可以在開發成本上節省不少時間及金錢,但是這些技術成本往往很難去評估的。
完成力這一個面向指的是品質的承諾、使用者的溝通介面、可被實踐應用的系統,這一個面向如果是大眾所使用的系統往往是利用大量的廣告行銷來塑造一個成功的產品,如果是一個專案的話,就是有一個專案經理來串連軟體開發的過程,跟廣告公司的AE,有異取同工之妙。
我觀察的程式開發人員往往在技術力不斷地提昇自己,但是並不會特別在完成力上面特別的努力,也是因為在完成力上面的努力成功無法很簡單的用數字來評量,也特別的看不出成果,他們或許已經覺得非常貼近客戶了,但是客戶無法那麼理性的使用開發人員所假想的系統,那如何要程式開發人員努力去學習完成性呢?
我認為有幾個方法,多多與人交談不要怕無聊,唯有相信別人的看法才有辦法改變自己的想法﹔培養神秘的第六感,不要一直用邏輯推理來想事情,世界上的事情有超過一半以上現在是無法解釋的﹔試著在合理的範圍妥協自己的程式架構,尤其是介面程式部分,雖然可能未來會證明你可能是對的,但是現在你的程式是錯的。
程式開發人員的技術力提昇的風險非常大,好不容易把Windows NT平台搞熟了,VB也用的很熟練,結果有可能一夕之間變成 Linux+PHP或者是C++ 的開發環境,所以,一定要保持隨時學習的心態,而解不光在技術的提昇,也要重視完成力的提昇。