軟體工程師的創業陷阱-接案

電子豹誠徵 Java 工程師

 

我本身是 Java 工程師出身,寫程式至今已超過 15 年,創業也超過 10 年,曾經外包過很多案子給別人,也接過很多外包的案子,現在不接案了,只經營電子報發送平台,在二年內累積超過 5000 家企業用戶使用。身處在創業圈,只要有創業朋友主動問過我的,我都會和他說如果你能不接案就不要接 ( 當然我也知道,如果不是為了活下去,誰願意接案 ? ),因為這其中有太多陷阱,我分享如下給大家作個參考:

因為你寫程式很快

通常會出來接案的工程師大多是有些年資,也會有自己擅常的工具及 library,所以往往可以很快完成主管交代的工作,會認為客戶的需求只要能在很短的時間內完成,這個案子就賺錢了。

【BUT】案子完成的快慢取決於客戶的心情,只要他心情不好,就慢慢拖吧。你以為你的 Code 可以 reuse,最後你才發現真正被 reuse 的是你的肝。

因為你寫程式很快,所以只要客戶比價、殺價、壓你結案時間,你就會心裡想一下:嗯,只要我努力趕一下,應該沒問題。

【BUT】,無形中你就犧牲了你的利潤空間,只有賺到微利,你知道工程師估完成時間的準確率有多少嗎 ? 準確率有多高,賺到微利的機率就有多高。

因為你可以賺每年的維護費

接案是這樣,只要你接了,之後的維護客戶也很難不找你維護,只要慢慢的累積,每年都會有可觀的維護費可以賺。

【BUT】,你知道大部份台灣公司有個不成文規定,同一套系統的維護費預算是每年遞減的,客戶會想:系統每年調整也該穩定了吧,都穩定了你也沒作什麼事為什麼還要拿這麼多錢 ? 接下來,你可能會想說如果客戶想加新功能第一個一定先找你,試想一下,叫你照著三年前自己寫的程式架構來新增功能,如果沒有吐血,大概代表這三年你也沒什麼長進。不接總行吧 ? 偏偏你就這麼有責任感,你不接客戶也只能打掉重練請別人重新作一套,你忍心嗎 ? 所以你覺得這維護費好賺嗎 ?

因為你很能為客戶著想

你因為很為公司著想,常常在開發過程中發現缺了什麼或是主管規畫錯了,你會主動的加班把這些缺的部份補上調好,公司對你讚譽有加,如果接案的時候以這樣的態度來對待自己的客戶,那雙方合作的感覺一定很好。

【BUT】,你的客戶當然好啊,因為你主動幫他加功能把系統調的更好,都不用再花錢啊。加錢 ? 合約當初就簽好了,如何告訴客戶要加錢 ? 況且這是你自己主動要加功能的。可以不加嗎 ? 可以啊,但你可以忍受你的作品明明可以更好的而不讓它更好嗎 ? 如果是當初規畫就錯了,不調整能驗收嗎 ?

因為你知道客戶要什麼

因為在公司時主管常常也語無倫次,但你總是能分析出主管要的是什麼,你也都能完成它,所以接案時就算對方不懂技術,你也能完成他需要的功能。

【BUT】,你知道客戶要的是什麼嗎 ? 不,你不知道,因為絕大部份客戶自己要什麼都不知道,而且你知道客戶的上面還有老闆嗎 ? 你知道客戶的老闆要的是什麼嗎 ? 不,你不會知道,因為連他老闆自己都不知道,這是最可怕的嗎 ? 不,還有更可怕的,他們會告訴你他們知道想要的功能是什麼,但你就是無法作出他們想要的。

因為你很能規畫

你是個邏輯觀念很好的人,只要主管告訴你他的需求,你可以很快畫出系統架構圖、程式架構圖甚至是資料庫架構圖,準確率非常高,所以接案的時候只要客戶告訴你需求,你很快腦中就會出現各種架構圖雛形。

【BUT】,你知道規格是誰開的嗎 ? 對,是客戶開的,因為他不開你就無法報價,如果他要你開,你也怕開完後報價他不接受就等於作白工了。那你覺得客戶的邏輯會有你好嗎 ? 所以通常你要作的是先了解客戶的邏輯,然後找出矛盾的地方,然後提出更好的解決方案,這一段來來回回就要花不少時間了,喔對,這一段通常是收不到錢的,客戶會覺得你要接我的案子,你本來就要先來了解我的需求。

因為你是專業的

你很會挑客戶,只挑欣賞你尊重你的客戶,因為他不懂技術,客戶告訴你他的預算及想要作一個類似某某某網站一樣的功能,其它的完全相信你的專業 。嗯,太好了,這個客戶預算不錯又尊重專業,沒有道理不接 。

【BUT】,客戶說:為什麼這後台這麼難用,不是這樣拉過去就好嗎 ? 圖片不是會自己縮放嗎 ? 圖片明明就有啊,在我的桌面啊,為什麼網站上看不到 ? 這之前填過的資料它為什麼不會自動跑出來 ? 不是我只要輸入第一個字系統會自動幫我補上後面的字嗎 ? 電子報的內容不是會自動產生嗎 ? 為什麼會員都說他收不到電子報不然就是跑到垃圾信匣 ? 這些不是很簡單很基本嗎 ? 別人網站都有啊 ………………….. ( 一堆什麼鬼的 ) 不管啦,你是專業的,你要幫我處理。你是專業的,你要幫我處理。你是專業的,你要幫我處理。你是專業的,你要幫我處理。你是專業的,你要幫我處理。你是專業的,你要幫我處理。你是專業的,你要幫我處理。你是專業的,你要幫我處理。你是專業的,你要幫我處理。你是專業的,你要幫我處理。

好的,因為你是專業的所以你學乖了,既然客戶技術能力這麼弱,那你就設計一個超簡單超容易超級防呆超級自動的後台,讓他只要十分鐘內就可以搞定所有事。

【BUT】,客戶說:X,這麼簡單的後台你價錢收我這麼貴 !?

因為你有團隊

因為你在業界有一定的人脈了,自己會寫程式,再找個業務高手、美編高手,這樣最小單位就好,大家可以分工,這樣接案的問題就變少、案子進行更順利。

【BUT】,因為你有三個人,所以你只能接可以養活 >= 3 個人的案子,這種案子通常會稍大一點,因為以上所述種種原因會造成結案很慢,如果不結案人卡在這個案子拿不到錢,新的案子接不了,怎麼辦 ? 對,加人,所以你的團隊變成了 4 個人,接下來你只能接可以養活 >= 4 個人的案子,這個時候如果來了個大案子呢 ? 對,你會陷入無限迴圈,直到你再也接不到更大的案子。

因為你想用客戶的案子來練兵

正如阿甘說的:人生就像一盒巧克力,你永遠不知道下一個會是什麼口味。所以你永遠不知道下一個案子在那裡,但當你開始有了團隊,每個月都要付薪水時,這時來一個不大不小的案子,反正也不知道下一個案子何時進來,這個剛好可以付團隊薪水又可以拿來練兵,這也蠻好的。

【BUT】,接案有個特性是你接了這個案子就會降低接下個案子的能力,因為人力及時間總是有限,如果你因為接了一個小案子造成大案子沒人力接,你說大家氣不氣 ? 不幸這個小案子的業主特別麻煩 (基於上述原因,你知道這機率還不小),那你磨練團隊的可不是他們的技術,你磨練的可是大家的身心靈啊,慢慢的就會有一股將相無能,累死三軍的聲音傳出來了 … 你為何不自己開發個小產品來練兵呢 ?

因為你應對客戶有一套

你的個性很好,以前在公司的時候都可以和廠商或客戶相處很好,可以接的接,不可以接的也會擋,如果出來接案和客戶應對對不會有問題。

【BUT】,客戶百百款,你對客戶有一套,客戶對你可是有好幾套,他可以議價、殺價、壓時程、加功能、拖驗收、會計不見、老闆出國 …..,最後怪你為何拖這麼久再扣你一筆錢,說了一句:我們別的廠商 (朋友) 說根本不用這麼貴 !!! 開發階段你們是朋友,驗收階段你們就變甲乙雙方。

因為你從來不缺客戶

你從來不需要自己去陌生開發,客戶都是透過朋友介紹或是客戶轉介紹來的,這和一般接案公司好太多了,別人想要客戶都還沒有呢。

【BUT】,你有沒有想過,你有上面所述種種優點,重點是你還比別人便宜,別人不找你,我都想找你了。所以你賺到錢了嗎 ?

因為你都有簽合約

為了避免以上不必要的問題,每個案子你一定都會簽合約保護雙方,凡事照合約走就沒問題了。

【BUT】,對方有法務你有嗎 ? 對方有錢你有嗎 ? 真正要打官司你打的起嗎 ? 你真的有把握合作過程中你完全沒錯 ? 合約裡有辦法規範到所有的功能細節、操作流程 ? 合約訂了一大本,你客戶會和你簽 ? 所以,你真的能照合約走嗎 ?

你最近一次開心寫程式是什麼時候

在我和你有一樣能力的時候,我曾經說過一句話:我希望我死前的最後一個動作是按下 【Enter】,我寫程式的動力不是賺錢 ( 當然賺錢很重要,但如果只是賺錢,我大可去作直銷、賣保險、到大公司上班 … ),精準來說不只是賺錢,我的動力來源來自於我寫出來的程式可以讓非常多人使用,真正幫助到很多人,而且很多人都說好。( 相信我,如果你真的作到這一點,其實你也賺到錢了 )

但自從我接了案之後,我最多只能幫助到我有限的客戶,說精準一點也許就只有真正使用系統的某些人,也只有這些人會說我好,其它人也只會認為那是你該作的,但只要最後驗收時他離職了、他生氣了、一切努力就沒了。所以那時我只有二個時候點是開心的,一個是收到訂金、另一個是收到尾款,中間一大段時間是痛苦的,當同時多個案子進行,其實所有時間都是痛苦的。我還記得我那時常說的一句話:收到你冷冷的支票,我的心就覺得暖暖的

當然一定有人接案接的很好,只是別人的成功很難複製,但別人的失敗可以避免,如果你能避掉我以上所說的陷阱也無法保證你能成功,因為這也只是冰山一角,我已經離開接案的狀態很久,很多事忘了也不想去想,只是希望你在決定接案前,仔細想一下,你真的只有接案這個選項嗎 ? 如果可以,我會建議你應該要開發自己的產品及服務。

你還有多一個選擇

如果你有以上條件但也沒想到要作什麼產品又那麼剛好會 J2EE,希望你能來找我聊聊,我們的服務有很趣,可以同時解決老闆、行銷人員和技術人員的困擾。電子豹是一專為中小企業無程式背景的行銷人員所設計,並針對開信率作優化的電子報發送平台,解決電子報因為無法正確傳遞造成開信率低落的問題。公司的文化決定於公司的前 10 個人,你現在來,還可以和我一起建立屬於我們自己的文化。

2016.11.28 更新:資深 Java 軟體工程師職缺說明:104 職缺說明

2016.05.11 更新:你也可以再讀這篇文章深入了解我們:軟體工程師應該加入電子豹的理由

 

如果這篇文章對你有幫助,請按個【分享】,我們會以大家的回應當作為大家分享的方向。

  • 感謝分享,從事專案開發也有個問題是會讓技術停滯,因為碰觸新領域的風險比起熟悉領域高很多,加上陌生領域很少人會意識到你的存在,人性使然,慢慢的就會接了一堆自己早已熟悉的需求,技術層次就這樣停住了,進步的大概就是打字速度跟吵架分貝量。

    但也其實,從事產品開發的風險遠高於專案承接,看過更多過程中就彈盡糧絕的例子,或者因此鬧翻的團隊,並不是看到接案子的壞處就表示做產品只有好處的 😉

    • 我覺得能一直寫程式的人一定有某種天份,如果把這個天份一直浪費在不對的人上面,真的很可惜,您說的很對,看到接案的壞處就只能代表接案有很多陷阱,不能代表作產品就會成功。

      和您分享我為何支持作產品及服務的想法,要靠接案接到年營收上億難上加難,但作產品或服務相較之下是比較有機會的,打開台灣網路業前100大或是國外網路業前100大,好像沒看到那間公司是靠接案,所以我選擇了作產品,這沒有對錯,就只是選擇而已。

      很感謝您的留言 ^^

  • Zieh Chien Sun

    目前只會C#啊 XD

    • 哈哈哈,那我們互相鼓勵,一起加油吧 XD

  • 「不能同意再多了」,當初也是想過,接案是用來練功,做產品是來實現自我價值!

  • Brian

    文章借轉

  • 最後的 pitch 是 “我們的服務很有趣”? 我有認真看完哦。很感動的一篇文。可是在沒有找到真正可以 work on 的前提下,似乎很難不接案。不知道有什麼其他的介紹(就是除了接案子,還可以增加現金流撐下去的意思)

    • 如何增加現金流這個題目有點大,我也正在創業好像沒什麼可分享,但對於【撐下去】因為我有經歷過所以可以分享一下,想要【撐下去】當然是希望未來某一天能有某種程度的成長,但如果你接了一個案子,三個月後結案,幸運的話你會賺到一些錢,不幸的話你身心靈勞累外加沒賺到錢,所以你多撐了三個月,但又回到原點。不管是三個月多賺了一點點錢或是三個月回到原點,我是覺得【撐下去】的意義不是太大,但有目的的撐著那又另當別論。對了,不能找一間不錯的公司先待著嗎 ?

      • 個人覺得其實在公司待著的話很受限,又要打卡什麼的,接案子再怎麼說還是有一定的自由度。小弟兩者皆非,都在寫小程式賣,還有接培訓的案子。我一直都有在關注電子豹的成長,每一次看你的BLOG都會學到新東西。希望下次去台灣可以拜訪你們。

        • 酷耶,我以前接案很痛苦時也想過要寫小程式來賣,反正要就來買,不要就算,而且還可以收現金,沒有那麼多雜事 XDDD。沒問題喔,歡迎來聊聊,謝謝 Cherhan。

          • 請問到時什麼方式直接聯繫最好呢?

          • 可以 Email :louis@softech.com.tw 或是加我 Facebook 也可以。

          • ok 剛加了

  • 請教一下,你所定義的創業接案是不是就像是專做人家OEM軟體或是自家做Retail Product的差異呢??? 也是有人創業專門幫人寫軟體的…. (或是客製化)

    • 對,我說的就是幫人作客製化軟體設計的。

  • sainancao

    文章借转

  • sainancao

    写的真好,想转给我们大陆的朋友看看,不过最后一段没有加入,因为我们网站基本都是.net用户,估计会J2ee的人不多,但是接案这个事情确实很值得分享与借鉴,本身我也觉得与其出去接私活,还不如好好学习,多深挖一下技术,不管一个APP或者网站有多简单。想要做好,都不是那么容易的事情。远远比想想的复杂的多,关键是针对那些本身就是程序员的上班族,接私活,会严重打乱自己的生活和学习计划。 http://news.cnblogs.com/n/522275/

    • OK,沒問題的。程序員是稀有財,希望大家在接案前多想一下。

      • sainancao

        谢谢

  • 麦子

    非常不错,文章借转

  • 陳信羽

    朋友的偶爾接 但還是很麻煩..

    • 接朋友的案子,價錢要優惠、服務卻要多作,不一定好啊。

      • 陳信羽

        而且朋友也不一定覺得 價錢有優惠 服務有多做

        但..就朋有嘛.. 偶爾為之囉

  • benedy

    竟然過這麼久才看到這篇超有感觸!!…… 其實我覺得接案也有好處…可以在短時間內獲取大量的經驗 規劃 分析 技術 視野跟人脈等, 我雖然沒有很厲害也不是Top級的工程師 但我玩過很多語言 跟東西 從硬體到韌體到軟體 正式轉入網路業也還不到兩年,算是被教授推坑吧(我沒很老快28@@ 也不年輕啦) 畢業到現在 也不到三年 待過大公司 跟小公司 感觸真的…,說真的接案真的很累。不過我覺得 在這中間讓我開拓出不同視野 不斷反思 從開始目標開工作室,到現在開使思考研發創投,雖然還沒開始要執行那些天馬行空,無聊就寫寫小東西,但我覺得接案也算一個軟體必經過的階段。

    • 很高興看到您的留言,其實接案就是一個身心靈的磨練,每個人能從中獲得什麼經驗或是得到什麼啟發都不一樣,寫這篇文章是讓想接案的人多點心理準備,不是程式寫好人家就會付錢這麼簡單。但不管結果如何,保持熱情,記得初衷是我想和大家分享的。

  • Tony

    感謝大大分享,我還是學生,在幾個月前有獨立接案,在接案前是希望接案邊練經驗邊賺外快,但是接案後才發覺在這段時間過得不很順遂,其中以合約最為麻煩,很認同開發階段是朋友,驗收階段是甲乙雙方,接案有糾紛時也是很麻煩。

    • 哈,你不是第一個遇到,也不會是最後一個遇到,也不會只遇到一次 … 加油加油 !!!

  • Hank Huang

    lol, 非常中肯,除了練自己技術、專案能力之外,我已經不太接案了,吃力不討好。

  • Xiang-De Liao

    請問您所說的寫一些小程式來賣是指什麼呢?是否有些例子能夠參考?我是一個才畢業兩年的菜鳥,在這兩年裡幫公司寫程式感覺找不到熱情,做的都是老闆想要而不是自己想要的,還常常改改去,就像是您說的,老闆根本不知道他想要的是什麼?所以最近在思考是不是有其他的出路?希望大大能給些意見,感激不盡!

    • 例如給結婚新人用的網站 .. 之類的,絕大不部份是賺不到錢的,我還是不要亂給你例子。基本上我覺得你的問題應該不是問題,老闆付你薪水當然是要作老闆想要的,改來改去也是常態,有可能是你老闆不清楚他要的或是環境變化太快需要作很多測試。我倒是覺得你要想好你要的是什麼? 薪水? 經驗? 技術? 人脈? 再來選擇適合的工作及老闆。給你參考囉。

  • john

    最近剛從職訓局結訓,學會寫app,會用mysql,php
    想說也許可以找到工作或接案了,但看到這篇文,又開始覺得前途茫茫了
    失業很久了~我還沒找到工作,哀