Eric Sink 談小軟體公司的創業經營(續) People

Update(2007/4/12): 補充 Simply Patrick 的延伸閱讀文章連結。

Part 2 談人 People,讓我想起另一本軟體管理名著: Peopleware。我想兩本書拿來一起比較的話,應該有非常有趣的觀點差異,有機會再來分享那本書的內容。

第八章 Small ISVs 需要 Developers 不要 Programmers

你應該找多才多藝的 developer,而不要找只寫 code 的 programmer。何謂作者定義的 developers,就是除了 coding 跟 fix bugs(幸運的話) 之外,還需要做以下事情 :

  • Spec documents
  • Configuration management
  • Code reviews
  • Testing
  • Automated tests
  • Documentation
  • Solving tough customer problems

大公司適用的 programming ,不見得適用小公司。Context is critical。不要把 programming 隔離起來,請教會他! 調整心態不要有 code-only 的想法。

延伸閱讀: Simply Patrick 的 developer vs. programmer developer vs. programmer, part II

第九章 Geeks 跟 MBAs

這章真是令人興奮,看完一整個爽… XD 一直以來好像創業應該有人負責程式有人負責business(至少眾多創業活動跟競賽都是這麼規定),不過經過作者這們一說,一個 software company 創立根本不需要找個 businessman 來幫忙。看看這些成功的大公司(microsoft,yahoo,每家的兩個 founder都是技術出身),其實不止軟體業,科技業的CEO也多是技術出身(這個議題想必商業週刊應該做過研究吧)。

當然,作者不是要說 developer 最偉大,畢竟你還是要跟 “會把HTML當成程式語言” 的人一起互動,但是 developer 也可以去做客服人員、銷售人員、行銷人員,公司不應害怕讓 developer 去做除了軟體開發的事情。公司在討論決策時,也一定要有非技術導向的思維,developer 要讓自己的意見被重視,就應該去學習其他非技術的東西(如行銷)來平衡。

重點是因為初期所有的決策幾乎都跟技術有關(例如一個經典問題,要自己 build 還是 buy?) ,developer 帶來的價值勝過其他人 (正確的說是隨著公司大小而定,公司越小相對價值較高,公司越大相對價值才會降低),的確是有很多工作是 non-coding,不過那些只是 part-time job(自己或developer來做即可),你不需要 full-time的人力,創業初期你不需要 MBA,更不需要所謂 businessman 的 co-founder。

延伸閱讀: Simply Patrick 的 developer-centric or not 和 找出 IT 產業的蠢事 末段的 joel 認為一家管理階層缺乏工程技術背景的技術公司不會有太多成功機會。我也非常同意有沒有 developer-centric 的文化是判斷一家軟體公司是否會成功的關鍵。

第十章 雇人

四個做 hire 決策的 guideline :

  1. 直到有非常明確且持續性的職位需求時才雇用 (after),而不是預備性的僱用(before)。這裡提到如果你有接受創投資金,往往會雇用過多的人,因為創投希望你快快成長而不是把錢放銀行。
  2. 要了解 Hiring 全關乎機率啊~ 有可能即使看起來條件都很好,進來之後也可能不適用。你只能盡量挑機率大的。
  3. 多了解法律合約,可詢問律師。
  4. 多聽聽不同觀點的意見,作者建議一定要有女性的意見(畢竟軟體公司有9成的員工是男生)。

要怎麼挑人呢? 首先是寧缺勿濫啊,公司這麼小若請到不適任的人相對損失非常大。

  • 請找至少在某一層面上比你優秀的人,有 something 這個團隊沒有的。不要怕員工比你厲害。
  • 最好的人就是不會停止學習的人! 這個人會學習嗎?? 會持續學習的人表示知道自己有所不知。
  • 了解自己的弱點,不怕討論的人。 (當然,你問的時候要小心面試書籍給他的答案)
  • 是否多才多藝願意去做任何能讓產品更成功的事情,而不只是 coding。
  • 僱用 Developers,不要 programmers。大公司找 best coder,小公司要找 best developer。
  • 教育程度則建議大學程度,Computer Science 領域。作者認為大學學歷最剛好,因為學校是教你成為 computer scientists 而不是 programmer或developer,還有很多學校沒教的東西。但也小心學歷太多,例如 Ph.D,除非有實作經驗。
  • 請實際看看來面試的人寫的 code,請問他實際寫過多少程式,coding經驗越多越好,有open source經驗最好(表示對coding有passion)。

第十一章 好 Hacker不等於好 Hire

偉大的Hacker不一定好,因為難搞。hacker常有技術偏見(例如討厭微軟),因此雖然 productivity 高,卻可能不符合客戶需求。不了解 工作(job) 跟興趣(hobby) 差別,畢竟還是有很多東西並不是有趣的。不關心與使用者的互動,不願意幫助客戶去使用軟體(覺得客戶笨?)……etc

第十二章

偉大的 developers 不只能讓產品更好,也能讓其他人因為跟他共事而更優秀。因此在 hiring developers 的時候,請考慮以下兩個問題:

  •  high-notes 能力,這個 developer 能讓產品更優秀嗎? 有創造力嗎?
  •  choir 能力,這個 developer 能讓團隊更好嗎? 能促進團隊合作嗎?

第十三章 生涯打算

C = G + LT ,持續學習才是重點。最好的機會就是思考面對所犯的 mistakes,而不是逃避掩蓋。自己的職涯掌握在自己手裡。

(待續,Part 3 Marketing, Part 4 Sales)

參與討論

5 則留言

  1. 小公司也需要研發,替未來的收益鋪路,不知道書上有沒有章節說到XD
    感謝很精闢的整理^^

  2. I was in the IT industry for more than 10 years, and I enjoy programming. After using the software outsourcing service of a software company in HK, I shift my focus to the finance field. They are very good at understanding and anticipating problems. I immediately favored software development outsourcing. It offered everything we needed: it’s stable, well-regarded, actively maintained, and the product’s open architecture meant that support costs were likely to be more reasonable

  3. Talking about outsourcing, a software development outsourcing has been everything that we needed. It has freed up my time to do other jobs and make us more productive, on a day-to-day basis. Instead of having to put out fires, it makes us more productive than before. By far the software package was much more user friendly than the other software we considered.

發佈留言

發表迴響