程式設計師創業之路
程式設計師除了一直在鍵盤上敲程式碼奮鬥,沒有別的機會了麼?有,只要有心,程式設計師也能創業成功。以下是小編為大家整理的相關文章。
周鴻禕談程式設計師創業
很多人都向往著有一天自己創業,程式設計師更是如此。如果你想創業,那麼該怎樣創業、需要有哪些準備、自己還有什麼不足等等這些問題你考慮過嗎?本文就跟大家分享周鴻禕在接受某媒體採訪時給程式設計師上的創業課。
程式設計師創業的特別之處
關於程式設計師創業,我之所以願意談我的觀點,是因為我是程式設計師出身,也是從小公司做起來的,我自認為對待很多程式設計師個人包括共享軟體作者和一些小網站還是很好的。我希望和他們分享一些經驗和體會。
首先,我想說的是聰明人不一定能成功,很多程式設計師很聰明,但我一看就知道他們不會成功。因為我看到了一些問題,而且現在太多程式設計師存在很多誤解。因此,我希望把我的觀點告訴程式設計師。或許有一些程式設計師能夠清醒,某個人可能因為我的某一句話有了感覺,對他以後的成長產生了幫助,這就足夠了。
要知道,程式設計師總是以為自己優秀所以就能成功,其實不是。中國的程式設計師大部分是盲目的:看看一些論壇就能夠感覺到,要麼有一群人自我感覺極端的良好,以專家自居,要麼就是一群藍領埋怨公司和社會環境不行,待遇不好。
應該說,中國程式設計師創業的成功率也是很低的。放眼望去,中國網際網路成功的人士有幾個是真正寫過十年軟體的。事實上,現狀和我們所能聽到的媒體宣傳的故事很不一樣。
很多程式設計師的最高理想就是寫一個共享軟體,一年可以掙幾百萬。但我希望談的不是告訴程式設計師如何掙錢,掙錢很容易,而是要告訴程式設計師如何去創業。比如雖然FlashGet的作者收入很高,衣食無憂,但從創業的角度看,它並沒有以商業公司的方式創業成功。
程式設計師在創業方面的欠缺
首先,我看到中國程式設計師的合作心態非常缺乏,我認為這是中國程式設計師最大的問題,當然這是有很多原因的。
大家經常說這句話:態度決定一切。但事實上好程式設計師基本上都比較傲氣,因為程式設計師往往會覺得自己在做世界上一件十分偉大的事情,這就是驅動機器,修改一行代 碼,機器就能夠工作,可以產生各種不同的行為。這很容易會讓程式設計師產生一種錯覺,認為自己可以Control Everything。程式設計師的自信在程式設計上是非常需要的,但不是適合一切場合。如果我們不說這些,可能很多程式設計師到現在還不知道自己錯在哪裡,仍然認為 自己是King of the World。
事實上,程式設計師的能力只是控制了一個機器。但創業僅僅具備了和機器打交道這一種能力是絕 對不夠的,他還需要和合作夥伴、競爭對手、投資人、員工甚至整個社會環境打交道。很多程式設計師因為已經習慣了和機器打交道,不善於也不願意其它的工作。很多程式設計師會內心認為“營銷不是很簡單嘛,市場很簡單啊,管理也很簡單啊,”我認為這種心態是非常害人的。
程式設計師還是一個很固執的人群,他覺得自己是機器的統帥,因此不會靈活,不會妥協。我當時也喜歡寫程式,但我知道如果自己沉迷於寫程式,肯定沒戲,所以是逼著自己改變角色。
優秀的程式設計師不要自負
這兩天,我收到幾封程式設計師的來信。有一封信中大意說“我是個如此優秀的程式設計師,為什麼我就不能成功呢,請你指點。這裡有我的blog地址,看完你就 會了解我了。”我想說的是:如果真的希望別人幫忙,就要把情況真實的說出來,而不是上來就說自己很優秀,這種語言就會讓別人覺得很不舒服,不是很好的交流 方式。我還真那個blog,但看完之後,覺得這個程式設計師就是一個空想狂。
可以說,很多程式設計師實際上是優秀帶來了自負,這種自負使得其不要說創業,可能在在公司中工作也會遇到問題。所以,我甚至認為程式設計師在創業方面遇到的困難比其它型別的人員更大。如果程式設計師希望主導一個創業,可能首先就要逼自己不是一個程式設計師。
程式設計師應持開放心態,尋求團隊合作
程式設計師首先要學會和別人合作。提到這點,很多程式設計師都會說“我正在帶著其他程式設計師寫程式啊,我會合作啊。”但這種合作是片面的,我所談的不僅僅是程式設計師和程式設計師之間的合作,而是包括了程式設計師和其它各種角色之間的合作。程式設計師相親,他們的語言比較能夠容易理解。但作為一個程式設計師,你能不能商業人員、銷售人員很好的合作呢。
我這些年還看到很多這樣的例子:程式設計師動不動就把目標定為比爾·蓋茨。其實,比爾蓋茨不應該成為程式設計師崇拜的目標物件,這會讓程式設計師迷失方向,因為微軟另外一個創始人保羅·艾倫才是真正的程式設計師。再看其它一些例子,Google的第20名 程式設計師都可以獲得五億美元。Adobe公司兩個創始人也是一個精通技術,一個對商業精通,這樣的搭配才能夠更好的成功。因此,對於很多程式設計師來說,一定要找準真正的榜樣,不要被外界的故事迷惑了頭腦。如果剖開一些故事的外表,你會發現國外很多成功的程式設計師,背後一定有一個很強大的商業感覺的人或者一個團隊。
程式設計師的商業感覺其實並 不是很好。即便有商業感覺,其實這只是一個靈感,一個創意,但要要做成、做大還需要一系列的管理、市場、運營,這些對於程式設計師是不可想象的。程式設計師要明 白,在自己不擅長的領域,找到一個可以彌補自己缺陷的合作團隊才是出路。加入一個創業團隊,可能個人佔10%,但因為更容易成功,而且團隊可以做100分 的事情。而如果只是一個人做,很可能就失敗了。
這方面,國外的程式設計師對自己的長短比較清楚。在矽谷,很多程式設計師技術上都很牛,但他們 都非常知道自己只是在技術這個領域水平比較高,出了這個領域,自己什麼都不是。正因為有了這種心態,他們特別懂得與人合作。我認為國外的程式設計師已經普遍意 識到了這點,他們很願意成為創業團隊中的一員而並非自己創業。
因此,程式設計師需要調整心態,不要把自己當作精英人物,要承認自己在程式設計方面是優秀的,但永遠有人比自己更優秀,對於其它的領域,很可能自己很無知。要知道,其實程式設計師的選擇其實是最少的,因此抱有開放的心態是最重要的。
程式設計師與創業要求還有哪些差距
我認為現在的很多程式設計師經驗過於不足,他沒有認真踏實做過很多工作就奢談創業。如果一個程式設計師沒有在程式設計方面深入過,沒有積累,也就是半瓶子醋。這 樣的程式設計師我接觸過很多,他們自己也不清楚問題出在哪裡,讓人感覺又愛又恨。我認為程式設計師既然要憑藉自己的技術,那就一定要踏實,要能夠實現任何創意。
但現在一些程式設計師自己沒有商業意識,卻又很自負,不相信別人,不理解的事情就不做。我遇到過很多程式設計師,他們對公司做什麼方向都質疑。他 們希望自己先想清楚,可是一想就浪費了很長時間。很多程式設計師就可悲在這裡,積累的不多,看不到方向,但他也不相信自己的公司和老闆,這是一個悖論,需要程 序員深刻反省。要知道,每個公司都有懂商業的人。
就這樣,一些程式設計師極端自負,另外有一些程式設計師碰了很多釘子之後,感覺很自卑,於是便認為國內軟體業不行,最後出國或者打工,很少有程式設計師能對自己能做公正的評價。
國內環境是否造成程式設計師浮躁的因素
我以前沒有仔細考慮過這點。但我想,不管怎樣,程式設計師需要先從自身找問題,因為大環境就是這樣了。我承認一個現實:程式設計師生存狀態並不是很好,但程式設計師很多報怨其實是一種不切實際的期望值和自身的缺陷產生的反差。
首先,產品沒有大小,只有市場的大小。很多人總是覺得這也小,那也看不上。認為公司做的產品很無聊,要做就要像某些人宣揚的那樣:做遊戲一定要 做3D引擎,好像只有這樣才夠牛。這其實就是一種浮躁。很多程式設計師寫軟體總是很多bug,基礎知識也不牢固,沒有參加幾個專案,沒有寫過十萬行程式碼,就奢 談做大專案,這有價值嗎?
而且我還發現有些程式設計師特別憤青,罵環境,罵老闆,其實這隻能把自己的心態搞的很壞。很多人剛進公司時做的很差,雖然工資少,但他沒有想到給公司增加了很多bug,公司實際上是在給他出學費。論壇上大家都在討論哪裡活幹得少錢拿的多。甚至還有人列了一些黑名 單。這種做法的結果就是程式設計師自己將周圍環境搞的烏煙瘴氣了。
有的程式設計師還非常喜歡指點江山,指點公司。我個人覺得這不是不可以,但 指責別的公司對個人沒有什麼好處,因為存在就是合理的。如果看不到,恰恰證明是自己看不到。我看到很多程式設計師也寫blog,技術交流的我認為非常好,但有 些人是寫評論。我是覺得程式設計師不要做評論家,中國不缺評論家,最缺的是實幹家。
總之,程式設計師一般過於自我。總生活在自我的世界中,就不可能真正瞭解世界是什麼。我很早就意識到了這些問題,也努力的去客服。我的經驗就是看別人如何做的好,為什麼能夠做的好,什麼是我所不能理解。程式設計師要學會慢慢站在別人立場上看問題。
最後給希望創業的程式設計師一點建議
對程式設計師來說,現在要做的也很簡單,這就是需要大量的實踐,要慢慢培養對產品,對商業的感覺。我的建議說出來可能有些忠言逆耳。對絕大多數程式設計師來 說,自己一個人成功的機率是很小的,所以我認為加入一個創業的團隊可能更為合適。現在有很多初期創業的公司,也需要很多優秀的程式設計師加盟。如果有理想,可 以選擇加入一個團隊,也有相應的股份,這方面我可以充當一個橋樑。
程式設計師的三年創業之路
關於決定是否創業
2012年4月,正好三年前整,在深圳能源正混的鬱郁不得志的時候,大學的好兄弟找到我一起創業,他們有錢、有 idea,就是差人,當時的我還是技術菜鳥,本科學的也不是計算機,看著移動網際網路蓬勃的發展羨慕不已。很快就答應了一起幹,因為心裡想著就算創業失敗了,那也學到了技術,也不愁再去找工作。現在回想起來覺得太魯莽了些,抱著這樣的想法的程式設計師應該不止我一個,每個人的生活條件和家庭背景不同,對與錯得由你自己來評判。
關於股份如何分配
成功的企業大多是相似的,而失敗的初創公司最大可能是股權分配不合理,我們的核心團隊成員最開始有四個人,Team Leader 在股份分配的問題上的意見是四人平均分,換取他掌握公司話語權。當時大家就都表示了異議,激烈的爭吵了幾天,誰也說服不了誰,最後不了了之,這也為後來的分崩離析埋下了伏筆。試想下,假如你確實牛逼,大家敬你服你不就完了嗎,又何須用股份來換取決策權。大家能力不同,那麼股份平分的缺點是什麼呢?創業是一個漫長的過程,每個人付出的時間、精力和成本一定會有差異。如果不設立股權池浮動分配機制,那麼問題就來了,拿著四分之一股份的 Team Leader 覺得自己太累了,事必躬親,心裡不平衡就開始內鬥了,因為我算是比較”聽話和能幹”,他先後擠走了所有的核心團隊成員,唯獨剩下了我。關於如何科學分配創始人團隊間的股份,以及拿出多少股份期權池用來激勵員工的問題,我這裡不分析,我只講我的經歷,能不能學到什麼,那就要看你了。
關於融資的問題
大多數的初創公司是很難拿到天使和風險投資的錢的,沒錢該如何創業,自己出錢、眾籌、做外包… 這是八仙過海各顯神通的事情,我們公司算是比較幸運的,這點必須承認。Team Leader 在軟體行業混了十幾年,有一些人脈和資源,從創立初始就有天使和風投願意提供大筆的啟動資金,後來我從深圳回武漢,也帶來了深創投的天使。可惜這些投資人通通被 Team Leader 拒絕了,理由是不缺錢。
沒錯,直到我現在離開了,公司也不缺錢,但是雪中送炭者少錦上添花者多,等到需要錢的時候再去找天使和風投就晚了,要麼被迫簽了城下之盟,要麼被迫拿出了大量的股份。有了錢就能提供更好的辦公環境、更好的待遇吸引優秀的員工等等好處無須贅述,而且投資人的能量往往大多遠遠不僅於此,他能站在不同的角度和高度看問題,他也是為你爭取更大的風險資本加入的先行者和中介人。換個角度想,你拿天使和風投多一分錢,就等同於減少了潛在的競爭對手一分錢,所以在不需要錢的時候一定要多拿錢。不要捨不得出讓一點你手中的股份,當創業不成功的時候,你拿著 100% 的股份也是廢紙。
關於產品是做到極致,還是快速迭代,還是同時做多個產品
第一款產品最初是做全平臺的商業視訊會議系統,是一款背離時代潮流的產品,我也不知道他為什麼會有這樣的決定。也許當時 Team Leader 是這麼理解的,全國都在如火如荼的搞 App 開發,我們反其道而行之,這樣就完全沒有競爭對手。可是當快速產品原型出來以後,基本上沒人搭理我們,無論是投資人還是客戶,因為這玩意兒太扯淡了,而伺服器端開發和運營成本高的驚人,根本就不是一般初創公司能夠承受的了的,專案還未正式上線就擱淺了,沒有認真的市場調研,沒有進行技術和經濟可行性的研究,甚至連潛在客戶的需求都沒有諮詢過,就這樣盲目的做了大半年開發,現在想來簡直不可思議。
第二款產品是 Google Reader 宣佈關閉後誕生的想法,可以理解為站在了網際網路的風口,放眼全球幾乎沒什麼大的競爭對手,因為 RSS 資訊和文獻的受眾使用者相對小而精,有一批忠實的粉絲,但大公司又剛好瞧不上,正適合小公司一展所長,投資人也特別親睞。這是一次極好的機會,天時地利人和,誰能儘快推出產品,就能如同秋風掃落葉般佔領市場,結果由於 Team Leader 一直秉持的做到極致的做事態度,寫第一代產品的程式碼,版本控制都已經設想到第五代如何更新和擴充套件了,一而再再而三的增加功能,他負責的開發客戶端遲遲無法按時交付,最後產品倒是極致了,可是錯過了上架的最好時機,又有什麼用?
其實對於創業來說,哪一種模式都有成功的例子,但都是不可生搬硬套的,誰也不能夠肯定自己的產品策略和切入點是正確的,這些都需要大量的探索和驗證,當發現走了錯路,必須要有壯士斷腕的勇氣,堅決砍掉錯誤功能或產品。我不是產品人,也沒有花裡胡哨、亂七八糟的想法,我只贊成最穩妥、最有概率成功的方式。專注於一款產品,儘快的推向市場,然後根據少部分使用者的反饋,修改服務或增加功能,最後藉助投資人的資金和人脈做大肆營銷和推廣,這就是我最認可的方式。
關於如何選擇開發人員和技術
這是大多數創業者不會說的話,大家都愛說實現不成問題,說這話的人我特別反感,人類文明文化發展迄今已五千多年,如何快速、高效、經濟和安全的實現一項工程是一門藝術,不是光有學問就可以的,今天的科學家們在工程實踐專案上的研究停滯不前了嗎?精益求精,實現恰恰是最大的問題。
我們的 Team Leader 算的上技術大牛,從美工出身後來轉到 Adobe Flex 系列程式設計師,也懂伺服器端的開發,算得上全棧程式設計師,精通軟體設計與架構,這些都是優點。主要的缺點有兩個,一是偏執,二是固步自封,也算是喬幫主極品粉絲的通病,我只是就是論事,並非要挑起幫主粉絲的罵戰或者程式語言之間的戰爭,如有冒犯請原諒。Adobe 近年在程式界的一天比一天頹敗,Flex 也早已過時了,結果 Team Leader 卻堅持選用 Air 虛擬機器 + AS3 + MXML + CSS 的模式開發客戶端,理由是熟悉且跨平臺。我承認轉戰其他平臺學習需要成本,但早期的 Air 虛擬機器的效能簡直慘不忍睹,就算是今天也是遠不如 Java 虛擬機器的,更不要說跟 Mono 或者 V8 引擎相比,更加不要說跟 Native App 的效能相比。最糟糕的不止如此,Adobe 不開原始碼,扔個半死不活的 Air 虛擬機器出來後,後續的優化和更新非常緩慢,稍微複雜一點的功能都要自己重寫程式碼,大大加重了開發任務,再加上 Team Leader 對於產品的高標準嚴要求,更是使程式碼量成幾何級數上漲,雪上加霜。
說到這裡不得不舉個例子,由於一直被客戶端的開發拖著進度,我們伺服器端的開發團隊和設計師甚至抽空出來,做了好幾個外包的 HTML5 網站和遊戲。等到產品上架時,整個團隊人心都渙散了。
總結
三年的創業時間說長不長、說短不短,一生能有這樣一次經歷也是可貴。現今的成功或者失敗絕不僅僅只是一個人事,整個團隊包括投資人都各有責任。最好不要讓 Leader 一邊做技術、一邊做管理,人的能力是有限的,精力也是有限的。如果 Leader 找對了方向,而你堅持不懈的追隨,那麼你就走在了成功的路上。堅持學習,和投資人搞好關係,從上一個專案的失敗中孕育下一個產品的成功,要運氣,也要實力。