吳俊瑩/iThome電腦報技術主筆

前幾天與朋友見面時,他說他跟老闆吵了一架,因為老闆不尊重他的專業,任意做了不合理的要求。這個朋友做影像處理的內嵌式軟體開發很久了,不過他的老闆我也認識,有什麼樣的技術問題嚴重到需要吵架?

「有一段處理影像code的程式碼,他希望我用組合語言來寫。」我朋友是這樣子看的:「但是我認為用C或C++的執行效率就很好了,而且我認為寫組合語言是Low End的工作,他這樣的要求不就是看不起我嗎?」

就一個技術人員來講,程式語言是一個工具,就像從事硬體工作的人,不論使用哪一種軟體來畫電路圖,重要的是結果是否符合預期?而大多數的預期就是「成本最低,品質可接受」這一條底線。以前我做IC設計的時候,也常常遇到公司裡面發生類似的爭議,因為IC的成本跟IC本身的面積很有關係,使用組合語言寫韌體,程式碼會比較小一些,IC的面積也會小一點,可以減少一些成本。但是工程師希望用C語言來寫的原因,一方面是因為比較方便,另一方面的理由跟我那個朋友一樣,覺得用了低階的工具就汙辱了身分。

其實沒有人在乎我們用哪一種工具來開發軟體、硬體、網站、資料庫,重點是競爭的相對性,如果市場上的競爭對手可以做出效能更高、價格更低的產品,那麼我們就得跟進,即使使用最低階的工具做一些煩瑣的事情,也仍然有其必要性。

競爭力的基礎在於「有那麼一絲的可能性就要去做!」的思考模式,假設成本還存在那麼一點空間,就要榨出汁來。

競爭是無止境的,而且大家都是受迫要去競爭,因為我們的產品被擺在客戶面前接受選擇,必須要竭盡所能地讓自己的產品脫穎而出!

「那麼業務在做什麼?我們做出來的東西他們就應該要去賣阿!」我的朋友提出了這樣的抱怨,為什麼老闆不去盯業務反而來盯他?
很強的業務確實可以把爛東西賣出去,但是在資訊開放的市場上,產品的價格與功能都是公開的情況下,沒有資訊不對稱的空間,到最後客戶會選擇價格導向,所以一開始業務可能可以幫公司賣一些產品,但是後來會越賣越少,因為產品的價格與規格沒有競爭力。

試想,業務賣了一些給他的客戶,然後他的客戶把東西賣到市場上,如果市場上有人的產品比較好、比較便宜,或者比較好看,那麼身為消費者的你會選擇誰的?

「那麼應該要做品牌啊?或者,找利基產品創造藍海吧?」這兩個問題很不容易回答,因為品牌要能做得出來,需要足夠的資本,但大部分中小企業可能沒有足夠的資金能撐到品牌出名。

創造藍海也不是件容易的事情,因為市場是公開的,只要有藍海出現,馬上吸引海盜來這裡廝殺。更何況品牌與藍海都需要時間,不是一兩年就可以達到的。

在工程師的世界,單純為了「工具」而發生的論戰每天都聽得到。例如Linux與Windows,這兩種都有人用、都有其優劣之處。企業如果要省錢,就會用Linux,但是代價是必須要有足夠的技術實力來維護。反之,Windows雖然比較貴,但是很多軟體都可以輕易取得。企業如果認為需要節省時間,當然會用Windows;如果認為一定要把成本壓到最低,那麼可能就會考慮使用Linux。

同理,使用C、C++、Java、PHP、ASP等各種程式語言,或者Visual Studio、Boland C++ Builder、Boland Delphi、KIEL、WindRiver、WinDriver等開發工具,也都是基於競爭力的考量來使用,而不應該貼上標籤或者有所謂高低級的區分。工程師腦袋裏面的東西才是重要的,工具只是幫助我們把腦筋裡面的材料實現出來而已。工具之間確實也有優劣,但是如果站在產品競爭力的立場來思考,該用哪一種工具就應該用哪一種,如果不會就應該花時間去學、去鑽研。

開名車的人,不代表事業真的成功;拿名牌包包的人,也不見得每個都是有錢人。有實力的工程師,不會在乎他使用的工具如何,重點應該是產出的東西如何。

工具是一學就會的,但是要能設計製作出有競爭力的產品,可不只是學就能學得到的。不管我們談的是什麼策略,藍海也好、品牌也罷,公司如果都只能做出「兩光」(意指技術、能力很差)產品,拿到市場上去賣就見光死,這樣子真的只是浪費大家的時間。

「萬一我照老闆的要求做了,但是沒有提高什麼效能競爭力,那不是浪費時間了?」我的朋友最後問了這樣的問題。這我沒能力回答,但還是提醒他:「這就像我們開發任何技術的時候,不都是想著『答案只有做了實驗才知道嗎?』」為了競爭力,如果能找到那一絲絲機會的話,多做一些實驗又何妨呢?

熱門新聞

Advertisement