在這篇文章中,匯集了專門針對互聯網初創公司的各種建議。其中的內容覆蓋了軟件工程(Software Engineering)、基礎構架(Infrastructure)、公共關系(PR)、會議推廣(Conferences)、法律財務等多個方面。它們將會告訴你:在互聯網創業的最初階段,怎樣的做法才是最明智的做法。我們希望你能夠覺得這些建議有用,但同時也希望你能夠知道:這些建議都是基于我們的主觀經驗所總結出來的,因此,并不是所有的建議都會適合于你公司的現實情況。
8條軟件工程(Software Engineering)方面的建議
軟件,是當今每一個創業公司的核心,因此它必須要優雅、簡潔,并且高效。為了實現這一目標,你不應當去雇傭一只由普通程序員所組成的大軍,反之,你應當去構建一只由機智的、滿腔熱情的、真正熱愛編程的軟件工程師所組成的小型團隊。一支小巧但充滿熱情的團隊,通常可以擊敗一支臃腫的、充滿官僚氣息的軍隊。即便是今后你的事業飛速地發展壯大了起來,你依然可以依靠一支支獨立的小型團隊,去征服任何龐大的目標(Google?)。
建議一:你必須要有一套真實有效的代碼
一套真實有效的軟件代碼,不但能夠證明整個系統是可行的,同時也證明了你的團隊有能力構建這樣一套系統。擁有一套真實有效的代碼,是你事業邁向成功的跳板。只有這套代碼準備就緒之后,你的生意才可以啟動。在過去的日子,技術型公司可以單單憑一支筆、一張紙,以及寫在上面的一個創意,就可以獲得風險投資的支持,但是這樣的日子已經一去不復返了。在今天,一個創業公司要想吸引到風險投資,不但需要擁有一套真實有效的軟件代碼,還需要一套與之配套的商業體系,并且要能夠真正吸引到用戶。軟件工程,已經從獲得投資之前的基礎工作,轉變為了吸引風險投資的核心手段。
建議二:你必須要有一位“真正懂技術”的共同創辦人
任何一個初創公司,都是從一個點子和幾個人開始的。現在,有很多初創公司的共同創辦人都是一些脾氣暴躁的,但是卻對生活和技術充滿熱情的偏執狂。而在過去,情況卻大不相同。僅僅在幾年前,一個純技術型的創業團隊想要籌集到自己所需的資金,依然會非常艱難。因為在那個時候,很多人都天真地以為只有那些畢業于哈佛商學院,擁有MBA學位的人才能夠經營好一家公司。但是現在,擁有一位“真正懂技術”的共同創辦人,將會是你贏得風險投資的一個巨大優勢。
建議三:雇用那些真正熱愛編程的、頂級的軟件工程師
直到最近,構建一套大規模軟件系統,其具體過程依然像是“實施黑暗魔法”一樣神秘難解。絕大多數軟件項目歷時數年,卻依然在苦苦掙扎。而它那龐大的軟件開發團隊卻還一直在對要做什么,以及怎樣去做而爭論不休。這樣生產出來的系統充滿了瑕疵,極不穩定,并且極難維護和擴展。之所以會造成這種狀況,其關鍵問題在于:在這些人中間,有太多的家伙根本不善于編寫軟件。而初創公司根本無法負擔由這些“一般軟件工程師”所造成的風險和成本。
建議四:保持研發團隊規模精簡,不要將工作外包
一個由2~3位“巨星級”軟件工程師所組成的研發團隊,幾乎可以創建出任何軟件系統,因為他們非常善于自己正在做的事情,熱愛構建軟件,專注于目標,并且相互之間不會拖其他人的后腿。一個由20名普通軟件工程師所組成的研發團隊,幾乎無法推出什么像樣的作品。那本暢銷的《人月神話》,拆穿了“隨著項目規模的擴大,你也應當給項目中增添更多編程人員”的謊言。真正的真相是:今天絕大多數成功的軟件,都是由一小幫優秀的軟件工程師所構建出來的。“少即是多”,這條真理不但適用于軟件的代碼,同時也適用于工作在它上面的人數。
建議五:在面試的時候,要多問“具有挑戰性”的問題
在面試的時候,沒有什么比向應征者問一些“無關痛癢”的問題,而最終卻為公司雇用了一位錯誤的人選而更糟糕的了。這樣的結果,對你很糟糕,對那個人而言,更糟糕。到最后,你們還是不得不分道揚鑣,因此你最好在一開始的時候就不要犯這樣的錯誤。在面試的時候,要“兇神惡煞”,多問一些具有挑戰性的技術問題。
建議六:避免雇用非技術型的經理
在一個小型的團隊中,你并不需要這樣的人。如果在你的團隊中,每個人都對自己所做的事情很在行,你只需要知道他們正在做什么,并向他們分配相應的任務就可以了,為什么你還需要一個經理呢?那些想要在你的目標之上覆蓋上層層復雜難解的工序流程的家伙,只會減緩你的進展速度,并最終讓你慘遭失敗。
建議七:培養一種靈活的企業文化
現代的初創公司需要學會靈活多變。這個世界上已經沒有時間或空間留給你去制定一個6個月的計劃,然后再去執行它了,因為其他人會比你更早實現這個目標。現在,新的“成功之路”是讓你的系統“時時進化”。當然了,你還是要認真計劃推出下一個新版本,但是你的動作要更快,要頻繁地更新,不斷地做出改變。你要把編程變成“一刀刀的雕塑”。
建議八:不要去重新發明輪子
有很多初創公司都“太過于熱愛”自己所創建的基礎構架。這里的“太過于熱愛”,主要指的是兩種行為 —— 重新去構建代碼庫,以及自己創建新的世界級標準。對于第一點 —— 你要知道,在這個世界上存在著許多卓越的開放源代碼的代碼庫。因此,“閉門造車”地將它們重新發明一遍,是完全沒有道理的。無論你所使用的是何種編程語言,無論是JavaScript、是PHP、是 .NET、是Python,還是Ruby,你需要知道,在互聯網上很可能已經有了相應的代碼庫,能夠幫助你實現任何你想實現的功能。重新編寫已經存在的代碼庫,不但是對你時間的巨大浪費,而你最終所編寫出的,很可能還沒有現存的好。
原文:http://www.readwriteweb.com/archives/36_startup_tips.php