2011年11月28日 星期一

我們公司沒有工程師,只有開發者

工程師跟開發者的差別,簡單的說就是看到的是『規格』還是『需求』。

工程師的工作是翻找補充自己的工具箱與資源庫,想辦法實做出符合設計規格的東西,開發者的工作是界定需求然後找尋並執行可以滿足需求的方案。

他們可能在同一個領域裡工作、有著相同的專業技能背景,但工程師面對的是系統功能與流程、開發者面對的是推導思考滿足需求的必要條件,探討什麼樣的系統介面與功能與人的互動可以導致有效產出(人生是殘酷的,大多數的時候我們要不沒有充要條件、要不充要條件為『不可能』)。

一間公司面對的是一個已經決定的系統、沒得透過檢討需求的本質來進行變更與調整的,那他需要的是工程師。所以高鐵找的是工程師、捷運找的是工程師,因為團隊不可能跟政府還是公司講:『其實要滿足公眾運輸的需求,捷運不合理,我們應該考慮tram,以下是我們的方案...』。

但如果一間公司面對的是一個根本不確定、只知道趨勢是存在著的、需求是存在著的環境就得開始工作的情況呢?那他們需要的是開發者(在硬體相關的領域,這種人會被叫RD)。所以現在很多網路服務的Start-up,他們找的是開發者。

兩者沒有孰優孰劣,只有你是誰、你活在哪裡、你的公司應該根據什麼樣的前提假設來建立、管理團隊才能創造價值。



在台灣,我沒辦法在對外人自我介紹的時候說:『我是軟體開發者』,我只能說我是個『軟體工程師』『程式設計師』或『寫程式的』而我認識的同圈子的人面對外人時也大多如此,我想這很好的說明了台灣的公司普遍屬於那一邊。

於是當我爸問我:『那些大公司也可以像你們那些個Start-up那樣玩出新把戲啊,他們資源那麼多,一旦出來不是會很成功嗎?為什麼你不覺得他們有機會勒?』

我答:『因為我面試的時候都會問一個問題,而到目前為止我從沒遇過那些老闆有拿到及格分數的(也就是讓我開始問第二個問題的)。』

這個問題就是:『請問貴公司有多少工程師?』
他只應該有一個答案,而且他得要能立刻回答:『我們公司(團隊)沒有工程師,只有開發者。』


我會去找的工作,都是我認為他的需求根本還不確定、而他們公司應該要有能耐去建立一個『開發團隊』去探索,而不是『工程團隊』照規格去做事的,但很顯然要不是他們需要創新,卻從不思考這種定義上的馬虎會導致管理行為與目標上的不一致進而造成不效率與失敗,要不就是我搞錯了,其實這間公司根本與創新無關。

每個人的人生都有想追求並實現的東西,而個人的人生目標與志向投射到軟體產業,那就決定了你選擇成為開發者還是工程師哪個比較好。不論如何,別找錯方向了,進錯公司(價值觀不match)有時候比交往錯對象還慘的。

2011年10月26日 星期三

[職場] 不受教的新鮮人?

我工作的公司是一間20人左右的軟體產品公司。

一多年前,我在公司的一項主要工作就是人力資源管理的計畫與執行。

目前公司採用的對新鮮人從徵才、面試、離線訓練、On Job Training整個流程的規劃設計的雛型差不多可以說是那時候我跟老闆還有其他資深工程師經過多次討論後建立起來的。

對我們這種公司來說,找人是一個非常嚴肅的問題:

1. 開發水準沒有到一定程度的開發者,在我們公司很難生存。原因很簡單,我們公司是做產品的,客戶是國外同領域的開發者,而寫出來的程式碼就是產品,所以水準不到的程式碼只是在浪費大家review debug的時間、同時製造客訴。
2. 我們公司很小、競爭對手跟客戶都散佈在世界各地,公司裡每個人都有多重任務職責在身上,也就是說我們很忙,平常很少能夠特地跑去顧新人,必須找進來的新人本身就『我們教得動』『會主動學習』才行。

在這樣的找人標準的前提下,我那一年應該要很常抱怨新人不受教才對,但事實上,在制度與流程建立後,找進來的人偶爾才有讓我們需要抱怨的時候。
所以,我認為,新人受不受教,大部份是公司自己的問題。
如何定義不受教? 這個人『不受教』是指他不聽話嗎?還是他聽不懂?還是是他聽得懂、也願意做但做不來?

不論上述原因是哪個,一個新人正式上線開始承接公司有實際產出的業務、與大多數的人合作之前,這些都是可以發現並且排除的。一個人的專業水準夠不夠,這應該是短則一個星期、長則三週就要能辨別的事情。一個人的工作態度好不好,一個月的相處,從他問的問題、給他的指示他如何應對,應該要可以知道。

如果一間公司老是在抱怨找進來的人不適用、總是覺得新鮮人都是『草莓』,那這間公司應該要先去檢討它的人力招募訓練篩選流程。

我們公司的人力招募訓練流程是這樣的:

0. 招募文宣,一份好得招募文宣要可以『清楚說明』應徵者所應具備的技能,舉例來說,『會用M$ Word』 這就不是個清楚的說明,『可以用M$ Word編輯排版功能編排一份內容如XXX ,可出版印刷的刊物』這才叫清楚的說明。

1. 筆試,我們花很多的時間建立一份適當地筆試題目,而且持續的因應需求修正它,一份好的筆試題目應該要讓應徵者可以用力思考超過一個小時。並且全面的檢測這個人『必定得有』的能力與少數『有最好』的水準。題目的數量應該要在限定時間內,預期招募的人的水準『幾乎寫不完』的量。
筆試做的好,招募時給的條件就能放寬,公司就越不需要靠不可靠的學歷與可以唬爛的履歷來判斷人。(另外,新人的筆試題目與高手一定不會相同)

2. 面試,一定要有流程,簡單的流程就是:
  公司介紹、工作與職務內容介紹、檢討筆試結果、開放性問題測試、英文口試。
以上兩關基本上要能刷掉70%『未來實際訓練時不會有機會通過的人』。
人很多很難找、公司的資源有限,一份好的筆試題目與面試流程是絕對值得投資的東西。

3. 離線訓練,所謂的離線訓練,就是給新人與實際業務無關的一系列訓練項目,測試新人的執行能力、學習能力與跟用人主管溝通的能力。在軟體開發,能玩的項目有,技術簡報、專題實做、專題發表、認證考試...等等,高時程壓力、高學習壓力是這個階段的重點,目的在於:
如果這個人未來在公司不會有機會,此刻就一定要刷掉。 不論是不是軟體公司,只要是偏知識工作,比起招錯的人進來造成的後果,一兩個月的新鮮人薪水實在太微不足道。
離線訓練時期公司薪資照給、做的項目又跟公司業務實質產出無關,就能夠確保執行上公司沒有道德風險問題,這使得新人在面對高壓與要求上沒有藉口逃避:他要不全力以赴、要不放棄出局。
很多公司不曉得離線訓練的重要性而想要跳到OJT,這是愚蠢的會計算盤。

4. On Job Training,基本上到了這個階段這個新人就幾乎可說是能用了,這個階段主要是讓新人實際的與團隊成員互動,蒐集團隊成員、老闆對這個新人各方面的軟性看法。

事實上,以上這樣的流程與制度不只為公司帶來利益,它同時也是一個應徵者適當地用來找公司的依據。

一個招募馬虎、面試隨便、不在乎訓練新人的公司,或許是個對員工工作成果有要求的公司,但它不會是一個對員工在專業能力的培養與成長真正在乎的公司。而長期而言,一間知識經濟下的公司在新鮮人注入的流程上失敗,這間公司幾乎必定會在公司的成長與文化養成上遇到瓶頸。

原因很簡單:

知識經濟下的公司,公司知識的累積與市場資訊的流入,會不斷地去刺激組織去重新定義追求的目標背後的價值範圍,這會使得公司的知識資產,在複雜度與廣度上不斷地提昇。

而公司要成長就要能有更多可以流通運作這些知識資產好發揮價值的人加入。於是,新人在公司的生存與事業發展機會的基礎,就建立在他能掌握多少公司知識資產上。

當一間公司在新人加入的流程上失敗,新人的生存率就會隨著公司知識資產的累積而降低。畢竟,沒有道理認為台灣每年畢業出來的社會新鮮人變強的速度跟公司的成長速度是一樣的。

而訓練新人、灌輸知識給新人與教育客戶、灌輸知識給客戶,本質上具有很高的相似性。

所以,如果一間公司創造出來的知識就連自己人都不能掌握,客戶就更不用說了,無法學會的知識等於沒有價值,那客戶又怎麼可能會採用、價格又要怎麼賺到手呢?


所以,你工作的公司裡常常有人抱怨新人不受教嗎?

好好想想是不是哪裡出了問題吧。

做Framework產品的二律背反

正題:
使用者有新的需求 -> 新的需求需要新的功能才能支援 -> 我們要提昇使用者滿意度 ->加入新功能。

反題:
使用者喜好易懂的文件與好上手的功能 -> 功能越多使用者就越難用也越難學 -> 我們要提昇使用者滿意度 -> 停止加入新功能。


最近開始思考,做Framework Function越做越多,Complexity 與Learning curve就會越加重,我們或許滿足了某些開發者在一些面相上的需求,但卻要增加複雜度與知識門檻而讓其他的開發者痛苦。

我知道有幾個方法可以減緩這個矛盾問題尖銳的程度:
1. 花大量的時間人力,透過review文件、寫文件,去整理產品規格。
2. 開發產品的自動化測試方法。
3. 成立專責的QA團隊,強化QA流程。

而我也很清楚這些東西長期而言是無法躲避的問題,一定要去解決。

但我常在想,有沒有可能存在其他方案能夠在不傷害成長動能的情況下,緩衝這個問題對公司的創新動能造成的衝擊?

還是說有誰應該要走過來朝我的後腦杓巴下去,然後說:『別做夢了,醒醒點,該是效法那些 Russian 起床拿Vodaka 漱口,然後去-20C的戶外工作的時候了』

2011年10月18日 星期二

如果你是一間專案開發公司的老闆

而你想要追求公司成長,記住二件事:

1. 長期而言,專案公司營收與規模成長速度,取決於開發人員總產能與默契如何提昇,不是訂單的成長速度。(台灣一堆小軟體專案公司會失敗,常常就是老闆看到訂單上的金額昏了頭。)

2. 公司成長的穩定性與對風險的承受能力,取決於你保留了多少閒置開發能量與可燒現金。(這會直接影響你覺可不可以睡好、胃會不會痛、你的員工可不可能喝西北風)


記住專案開發的風險是較高的,delay 個10%~ 50%是很常有的事,倒是提前完成的不多。為什麼?因為莫非就是在那裡,而軟體專案開發是最被宇宙定律詛咒的行業。

專案開發的生產模型,靠得就是消費一群專業人員的專注力與可工作時間,來完成且持續維運一個脆弱且動態的系統的各項功能,然後透過這個系統來供給滿足終端使用者的需求,賺取利潤。

這時宇宙讓我們碰上三個性質都非常極端的玩意:
第一是『需求』、第二是『人』、第三是『時間』

『需求』,特別是任何資訊類型的需求,是非常抽象而難以捉摸的東西。當一個需求被提出來,以這個世界的知識作為背景去延伸,無數的細節就會隱含在那裡等你來發掘。
開始規劃時你沒找到的,以後就變成地雷等你來踩。
開始客戶沒想到的,以後就變成『規格不符』等你來修。
需求與真實世界互動下無數的可能性與細節就是專案風險的第一來源。

『人』構成專案風險的第二來源。
不要講客戶,講自己人就好,人的能力提昇不是線性的、每天工作成果是不好預測的、情緒與健康狀況是不能阻止的、人與人之間的溝通與衝突是難以設計預防的。於是你看到小公司一個人離職會驅動整票人走,因為人走了工作就是留下來的接,長期的加班與不滿被新加進來的工作一次到位,公司的產能就那麼玩完了。像這樣子的非線性系統動力災難在『人的領域』裡到處都是。

再來是『時間』,時間是最沒有彈性的東西,不能儲存、不能移轉、一天就是只有那些。
而專案Critical Path上任何突發事件造成的『延遲』,都只會累加、不會減少。客戶慢了一天回你,那一天你就是沒有進展、這個專案的完成就是得多延一天!千萬不要小看一天,這一天的影響不只累加在這個專案裡,還累加到正在進行的其他專案裡、累加到下一個專案裡、一旦開始加班那就累加到員工對公司的不滿情緒裡、當然也累加到客戶的回應與滿意度裡。無數這種小小的漣漪擾動著整個團隊的情緒、也透過相依性驅動著無數的事件,帶給專案經理精彩又刺激的每一天。


『需求與人』這兩個巨大難以量化的統計波動來源,配上沒有彈性只會延長累加誤差難以提前縮短的『時間』,就是專案執行管理上的本質。

而『製造腦袋』的老闆們常常在這個行業摔跟斗也是因為他們無法理解,用不穩定的人(而不是穩定的機器)、以沒有彈性的時間(而不是有得商量的物質原料)、去滿足幾乎可以任意修改的需求(有沒有看過EIP系統從新增客製報表這樣的需求開始,變身成CRM的?)背後所代表的意義。

於是當客戶一通電話來說有個案子價格可以開到多少時....你得想想這真的是個機會還是什麼,你的公司還有『閒置產能』嗎?過去一年新人的年生存率是多少呢?你最擅長做事的人是不是最忙?你最能有新想法的人上次有空跟提idea是什麼時候?

你想『傾全公司之力』追逐『機會』?想碰運氣?

當所謂的產能提昇不是找即戰力、就是找免洗菜鳥。
當追逐訂單,把產能閒置率給用光。
當公司裡每個人都加班,老鳥最忙、新人沒人理。
當人來人去大家筋疲力竭死氣沉沉,再也沒有人在乎這一切。

當不小心錯把貪婪當成公司目標。

記住你選了這個行業,而在鬼島台灣上天的祝福早已遠去,你還是個被宇宙定律給詛咒的人!
想想公司可能會有多倒楣,那就幾乎必定會發生。

開軟體公司想追求長期持續的成長與創新嗎?
修煉一下那通電話的『逢魔時刻』來臨時,該如何應對吧。

2011年10月9日 星期日

你相信嗎?

你相信什麼,那麼在你真正相信的當下,你已經得到它了。

如果你相信人活在世上不需要這麼樣的去追逐慾望,那麼你就已經得到一個『不用追逐慾望』的生活了。如果你是基督徒,你相信神愛世人,那麼此刻當下你已活在祂的祝福下。如果你相信人存在就是為了繁榮人類生存的這個世界,那麼有一天你的人生結束時,這個世界會因你而繁榮。

你唯一需要去思考的,是你要不要捨棄這個你已得到的『絕對』,你有沒有跟外界對著幹,不論成功失敗希望絕望捍衛你的『信仰』的勇氣?

人不會因夢想而偉大。

人一天到晚被慾望擺佈撥弄,而要產生一大堆稀奇古怪的想望,這些想法都很令人興奮,但難道它們都有價值嗎?
人無時不刻被命運左右而要產生各種煩惱情緒意念,人該拿這些佛說三毒的東西來決定自己如何活著嗎?

人會因信仰而擁有力量。

能夠從慾望所生成的雜念中淘選出有價值的部份的力量。
能夠讓你面對命運不確定的本質而維持心靈恆定的力量。
能夠用來約束自己、要求自己最終超越自己的力量。

當你把你的人生奉獻給你的信仰,你就會有力量在眾人都反對你的世界理,去保護你已擁有的東西。

2011年10月6日 星期四

Firefox, what's wrong with you?

Recently the Mozilla foundation updated my beloved Firefox very often.
They moved their step to FF4 at the beginning of this Year, then 5, 6 now it's 7.

I used to use Firefox to deal with those HEAVY stuff, such as my three GMail accounts, famous Firebug for web development and some fantastic plugins to scraping web contents.

But now, my happy experience was gone.

0. Gmail Manager was malfunctioned. 
I used GMail Manager to manage my GMail accounts, but now due to Google's new gmail policy(shame on Google for this), I cannot get any benefit by using firefox to manage multiple GMails, I hate to sign-in 3 times with 3 different browsers when I start my PC, I know it's for security, but it's still annoying and I do know this is not FF's fault, but  this do reduces the score that FF get when comparing with Chrome. If there's any new plugins that can deal with this, please let me know.

1. New logic behind Firefox's Certification Key management is sucks!
It started to fuck me since FF4, have you ever encountered a "Secure Connection Failed" which Error code is: sec_error_reused_issuer_and_serial? After read the root cause from this link:
https://support.mozilla.com/en-US/kb/Certificate%20contains%20the%20same%20serial%20number%20as%20another%20certificate
and searched any possible solutions to workaround this, I must say this is a BIG WRONG DECISION that Mozilla made for Firefox after Ver 4. They intended to forbid any user to access the web in https through some old router that doesn't generate the security certificates well. I know they gave this restriction to prevent some kind of attack, but so what? does my parent who are already 60 years old working in a big company should buy in this? And compare to other browser: IE has no such problem, Chrome has no such problem, Safari has no such problem, if you are an IT guy and people put this on table then what will you do?
OF COURSE you won't do anything to that old but expansive router, because it's very possible that there's no one knows how to deal with it, the things that you will do is to write a batch file and put it into schedule which will REPLACE every Firefox to Chrome!


So now, I'll have to tell my big old company customers:
FORGET FIREFOX, because your router is too old to generate a proper certification so Mozilla foundation  think you are not deserved to use their product! Imagine what they will ask you to do next.


Backward compatibility is not just compromise, it's an important feature!


In this case, what Firefox can do is simply provide a boolean config that MIS can turn on or off before they trigger the installation to every desktop, or, they can prompt this error with a special option to let user bypass the check after reading the possible hazard  description.

But the only workaround that Firefox left you by now is to delete the cert8.db which stored every exception that you have while doing the certification,(Yeah, you can delete THAT certification if you know which one, but do you really know how many Cert was screwed up in your Firefox?) and you need to turn off Firefox before doing this.

2011年9月27日 星期二

Re: [心得] 台灣的軟體工程師該何去何從?


This is a reply that I wrote at PTT.CC, I think it's good to post it here.
:   其實就軟體產業來說我個人也認為不太樂觀,
:   從中國近年薪資成長的幅度和高低差距就可以看出,
:   中國現在很像當初台灣經濟起飛的那個階段,
:   一般人民想要往中產階級前進,基本上走軟體這塊是非常迅速的一條捷徑
:   只要習得進階的技術,便很容易能年年身價跟著水漲船高
:   加上盜版真的也算是中國軟體業快速成長的幕後英雄
:   技術、資訊的易取得性,任何有心人士只要一台電腦和網路線
:   就可以在家閉門造車、甚至練成一身絕技
:   於是中國人材前仆後繼的投入這塊領域

我不否認現在中國大陸的軟體業比起台灣發展的更熱,但這個立論有幾個問題:

1. 對岸同水準的開發者,薪資比起我們只贏不輸。
當然我說的是台票40000+以上的在比,低標由於基本薪資還有物價水準的關係,台灣的低階行情薪資會比大陸高。而大陸職場軟體業專業開發者每年談薪水多是10%起跳的,一跳槽能翻兩翻的新聞還有聽到,這點台灣就輸很大了。

也就是說,同樣都是有賺錢的軟體公司,大陸的薪水不會以台灣差,而漲幅可能更好。

2. 盜版什麼的,台灣條件要不相同要不更好。
如果說靠盜版就能撐起軟體業,台灣當年都被『譽為』海盜王國,差點就要超級301了,那為什麼我們的軟體沒起來?明明一切都早了別人十多年。至於資訊開放,我們的網路沒有金盾擋著,沒有censorship,種花電信官僚歸官僚,還不至於是黑心ISP,我們連國外可一向比較快且穩的。

所以,『大陸軟體業比台灣火爆』的成因不會是低成本、盜版、資訊流通快速。



:   即使中國就軟體人員的素質來說,相較於台灣還算是比較參差不齊
:   但縱使假設台灣 10 個軟體人員裡面,稱得上優秀的有五個好了
:   而中國保守假設 10 個只有一個
:   但中國人口數是台灣的 50 倍之多
:   整體下來可用之兵還是足夠打掛台灣..

整個非洲加起來的人比我們多,但沒有人在害怕非洲。

整個新加坡人口比台北市還少,但我們羨慕他們的成果。
(他們當然有很多不好的地方)。


另外,『打掛台灣』?
產業是市場經濟的領域,不是統獨政治的場域。大陸人開軟體公司的目的是為什麼?就為了搶台灣人的飯碗嗎?我看不出大陸老闆特別針對台灣會有何利益上的合理性。


人多從來都不是問題,軟體業只是一個統稱,裡面有太多的專門領域以及各式各樣特殊的獲利模式。
一個已經有100人,平均個人年薪70萬台幣的公司,沒有辦法全力去進入一個年產值只有10億的市場,因為CEO會在董事會議上被釘到牆上去。一個需要聘請Sales去跑業務、接單抽成的軟體公司,沒有辦法去做一套可以只賣100美金的軟體。一個想跟VC拿500萬美金的團隊,當初跟VC的承諾,絕對不會只有每年穩當淨收50萬、年獲利成長率10%、五年後開始獲利。

台灣一個團隊的資源與人數比較小,那就挑對手也只能丟一樣的人數、資源的領域去做就可以了。

:   加上個人曾經跟公司內中國分部合作的經驗
:   發現或許是他們那的誘惑少很多
:   有的工程師竟然只要沒事的話,都是在 trace 一個數十萬行程式碼裡面
:   各 function 和流程,真不知該說是佩服還是無言來形容....


我想包括我在內,版上很多人閒著沒事都是在看Code的。
你如果挑得是Eclipse還是Linux,那你還可以說『我看得是百萬行級的程式碼』。這不是誘不誘惑的問題,這是知識工作者對自身專業的態度與要求問題。
:   現在中國一些著名的軟體和公司,不管是 UI 或是功能設計,
:   其實蠻多都已超越外國軟體
:   反之台灣或許就是富有慣了  軟體產業像是一個邁入退休階段的老年人
:   (但卻沒有一般到達退休階段該有的薪資水準)
:   以致於大部份的人興趣潰乏  只求不要過勞死、能溫飽就好
:   唯部份人還能依靠著「熱情」不斷向上充實提升
:   但現實是....熱情會永遠歷久不綴嗎?
:   想當年資訊產業剛盛行時
:   很多中文軟體技術文件的第一手資訊都還只能找繁體版咧...


我認為中國大陸軟體業長期來說會起來最重要的兩點:

1. 市場為創新之母,而他們有夠大的本土市場。
大陸新興了這麼多少則數百、動輒成千上萬名員工的企業,如果這些企業在自己的市場裡要跟對手競爭,他們一定要依靠IT建設來流通資訊。

而他們競爭的對象可不只國內自己人,多得是有外商來插一腳、分杯羹的。
所以中國企業要存活,他們一開始就會考慮用目前世界現役水準的IT科技才能至少不輸給外商。那麼需求誕生了,你是在中國開公司做軟體的,你會不鑽研最前面的嗎?

2.政府專制。
很諷刺的,中國政府在資訊控制與言論管制,不論在實際政策執行與法規方面都相當的『有效率』。這樣的效率還有中國獨特的對『法』的認識與解釋,使得顯著比例的外商在中國栽了個大跟斗。(中國對自己人偏心,但誰叫你外國人看到人家市場大就犯賤要來做生意呢?)不民主、不法制、語言也不是很通,這都給了本土有心想發展的企業很好的機會鑽空子。

至於台灣,只能說,這十多年的軟體現況,就像是棵矮樹站在『硬體製造』的參天巨木旁,掙扎著要去多照一點光、多吸一點水。資金、人才、政府關愛都被吸走,而不論是業界還是學界,從來也沒有凝聚什麼特定共識最後做出成績出來。

台灣小,但小不是藉口。
韓國也小,而在我們嘲笑他們的公家機關網站很爛的時候,他們的公務員跟民間卻硬是把遊戲產業做起來了。而台灣人的政府只會在那邊戰藍綠,沒在討論共識的。

回到正題,在台灣要開一間在特定領域作到『世界級』的軟體公司,大概Google Search該領域關鍵字,同領域產品可以排進前五名這樣的水準,並不是辦不到:

1. 如果目標是賺外國人的錢,那就要做『文化中性、領域專門』的產品。
簡單的說,你的目標用戶,最好是某個非常專門領域的知識工作者,而那個領域基本上沒有地理區域上的文化偏好。舉例來說,你做的如果是Matlab、RDBMS,會對這種東西有需求的人通常都是為了他們專業上的需求而用,而不論是哪裡的科學家,他們對matlab的需求價值不會有文化上的不同。

做領域專門的東西有幾個好處:
 1)池塘裡養不了鯨魚。如果該領域真的很特殊,那市場總產值一般就不高,跳下來對那些大傢伙來說只有資金資源擱淺的份。
 2)機會成本構成進入障礙。學歷身份太好,想要年薪15萬USD起跳的人不會進來。本來產業就沒多少錢,當然不可能冒險請尊神像供著。


賺外國人的錢,而不抱台灣企業的大腿有幾個好處:
 1)客戶不會三天兩頭要你"onCall onSite onSchedule",人不近不親就沒有可以盧人情的空間,沒有人情買賣的成本就好損害控制。不要小看Local Support這種Event Driven的Task對團隊開發效能的侵害,寧可生意不做,不要Over service。
 2)保證的事有作到,他們普遍給錢不囉唆。特別是法制國家的客戶。
 3)市場大多了。只要產品領域是文化中性的,台灣人做的跟美國人做的分不出來,那就是產品說話:價值取向、品質、價格決勝負。
 4)開發者的滿意度會比較高。兩個開發者,一個中華民國政府、台灣中小企業的專案三年接10個,一個走自己的步調開發公司的產品,透過網路與世界各地的客戶做Consult Support也是做三年,是你你選哪一個?哪間公司比較好留人、比較好累積知識資產?哪一個從公司畢了業要找工作時履歷比較好看?答案很明顯。


2. 要做低單價的東西。
最好一張訂單可以壓在1000 USD以內(可以是任何夠低的價格,目標市場的客戶可以不用
經過層層審核就能動用的錢以內最好),低單價可以保證二件事:
1)你會強迫自己在產品的價值訴求上採取『大廠不可能用』的差異化策略。
  也許你的產品跟某大廠生產的的產品都叫做A,但是市場上會買你的東西的人,跟會買大廠的東西的人將會非常的不同,因為他們是基於不同的需求來評價各自心中的A的。

2)市場上VC投資很多錢的競爭對手,被迫得要燒更久的錢。
單價與客戶數量決定流進來的現金,而現金決定獲利。當你跟競爭對手提供的產品服務有著重疊度很高的價值取向、而不論那一方都難以訴求新的價值來爭取客戶時,價格就會決定何者採用。這時候透過壓低單價把回報期拉長,就會使競爭中燒錢速度快的那方 - 特別是有VC投很多錢佔投資比例高的團隊會變得非常痛苦。
VC的特性就是:他們想要一個大的錢投下去、快快燒、快快回報,年報酬率數字好看公司就能賣到好價格,因為對他們來說資金週轉率很重要。這樣的特性使得VC普遍的缺乏耐心,他們會在Review時去『建議』他們認為可以衝高業績來讓帳面數字好看、讓投資人安心的『作法』。

簡單的說,如果錢都要足夠燒超過兩年,當你背了100萬,而對手背著500萬,那麼當單價被壓低時,VC臭臉的程度、Funder胃痛的程度、團隊在壓力下做出錯誤決策的風險,你的對手就是你的五倍。

基本上以上的策略就是在消除『超級對手』出現介入的可能性。


我個人相信台灣有很大一塊的中高階人力(秀才),都是浪費在國內很多吃不飽餓不死、累積不了專業、也沒有能與高報酬匹配的挑戰的專案環境裡。這些人其實都是可用的兵力將這些人釋放出來,或從新一代開始把人往這樣的方向導過去,我們可以拿優秀的小團隊去對付那些傻傻跳進來沒有穿吊嘎拖鞋去苦幹五年的心裡準備的對手。


回到政府的作為。台灣政府有個白痴的思考方式,就是認為:『產業產值越大,越值得大家跳下去。』
看看新聞講得那些:
MEMS很大很好我們要做、生科很大很好我們要做、Cloud很大很好我們要做。

一堆專家學者們還在做著有一天自己的研究可以『超英趕美』的白日夢,結果總是讓產業被各國專利打臉,只因為『市場在人家的土地上,而人家地雷已經埋好了』。都已經21世紀了還在幻想可以像過去竹科那樣,靠一個產業幾家指標企業養所有人。兩兆雙星、新的園區、新的產業條例都是這種好大喜功的思維表現。

台灣軟體的產業開拓,應該要朝一籃子特殊領域產業開始前進。

軟體是一個需求變化多端、快速、零碎,供給價值的前提假設變化莫測的領域。
戰爭迷霧大,目標模糊,就總是有外國企業重艦巨炮無法著力的地方。

化整為零打游擊,從低產值的『鄉村』偏僻領域開始,一個一個的用優勢兵力局部聚焦方式做出優秀產品把市場打下來,那麼只要累積到一定程度,鄉村就會包圍城市,只要剛好在一個關鍵的大需求上我們湊齊了一條龍,那就是螞蟻搬象的時候到了。