組員技術培訓

李先靜發表於2020-04-06

轉載時請註明出處和作者聯絡方式
作者聯絡方式:李先靜 <xianjimli at hotmail dot com>


可能我的運氣比較差,曾參與的幾個專案,都是大型的、失敗的專案。

 

第一個專案是一個Transform Proxy Server(TPS),一個基於apache的代理伺服器軟體。移動裝置(如PDA、智慧手機等)通過它去訪問PC網頁(HTML)TPS會根據裝置的(UserAgent)HTML轉換成適合裝置顯示的網頁(如HDMLCHTMLWML等)。不包括第三方的程式碼(xerces/xalan/icu/tidyapache等)有50多萬行的C++程式碼,10多萬行的JAVAJSP程式碼。其中採用了很多先進的技術,在美國展出時,微軟的人看了都叫絕,甚至想OEMIIS裡。但由於穩定性太差,這對於一個伺服器軟體來說是致命的,除錯幾年後進入了垃圾箱。

 

第二個專案是一個網頁編輯器,提供移動裝置網頁的視覺化編輯、預覽、網站管理功能,該專案也有超過50萬行的C++程式碼。BUG數最後達到17,000多個,到專案被取消時,還剩3,000多個bug沒有fix

 

第三個專案是一個智慧手機,該專案也是個龐然大物,專案推遲一年後釋出,其中也是一波三折。因為其功能豐富,在市場上贏得一度之地,但其穩定性、可維護性不敢恭維。

 

很多人都說,中國缺乏的不是技術人才,而是管理人才。這個斷言是否是真實的,我不清楚,畢竟我的經驗很少。但從這個三個專案來看,個人認為失敗的主要原因不是管理,而是技術(當然,如果你把緩衝區溢位也認為是管理上的失誤,也是有道理的)。

 

曾見過工作四五年的C++軟體工程師,連拷貝建構函式都不清楚,把上萬行程式碼的模組放到一個類裡,程式碼亂七糟八,更不清楚什麼設計模式、程式碼重構。有的做事的態度和方法都不太好。我得出一個結論:技術培訓非常重要。若認為寫程式碼很簡單,交給新手去做,也不給他們培訓,專案一定死得很慘。從我帶人開始,一直把對組員的技術培訓作為重要的事項之一。在這裡,會記錄一些重要的技術培訓。

 

相關文章