CSDN上有幾個熱心評論員,幾乎每篇熱門文章評論中都可以看到他們的身影,印象比較深的一個是一門心思批微軟的技術,一個則是持Linux萬能論。有時候他們的觀點未必沒有道理,關鍵的問題是視野太窄了,始終只盯著技術不放,不能說這一定不對,極客精神么,但大多時候程序員價值(尤其是現金價值)的實現不只取決于技術。
模式不一樣 程序員價值也一樣
開源之外,軟件是商業的延續,所以代碼里大多時候也包含了商業利益,而不只是單純的技術。商業利益依賴于商業模式,而商業模式決定了很多人的職業特色和路徑,進一步決定了程序員可以只關心技術么這個問題的答案,比如:外包與產品開發在盈利模式上的差別直接決定了它對人員的不同要求。
在微軟如日中天的時候,曾經有一本書叫《微軟的秘密》里面講了這樣一個小故事:
我們中有些人對開發人員懷有極度的不滿,那簡直就是嫉妒。達瑞爾?希文斯是Windows NT的主要開發人員之一,他有9輛保時捷,我當然也希望能夠擁有9輛保時捷。但我怨恨達瑞爾么?當然不。他絕對受之無愧,他真的棒極了。如果用我的支票來給他開工資,我也愿意。不過從長遠來看,過一兩年你肯定就能得到應得的報酬。如果由于某些原因,我們引入了達瑞爾,并付給他足夠買9輛保時捷的薪水,而他一旦干得不夠好,就不會在這里工作很久... ...但這些開發人員都是精心挑選出來的人才......唯一的不利之處在于,總有一部分人感到開發人員才是“主角”,但這正是這一行業的本質。
假設一個人技術也和上面說的達瑞爾一樣牛,但是在外包的模式里面,那它可能達到上面的程度么?答案是不可能,因為模式限制了純技術角色所可能創造的價值,進一步預先定義了技術路徑長短的極限。
當一個公司的核心技術并沒有創生多大價值,而是需要靠人力規模、商業模式等來支撐業務的時候,那么我們可以稱之為技術路徑短的公司。想象一下,如果一家公司專門承接本地化工作,那么也許也會需要程序員編制某些工具,但對程序員而言技術路徑無疑是短的。
如果暫時把眼光從程序的世界移開,那么事情就可以看得更清楚。
在蓋樓的時候,只要達到基本的質量,一個人每天砌200塊磚,固然比砌100塊要好的多,但相對于大樓而言,多砌100塊磚,所多帶來的價值有限。再進一步由于砌每塊磚的價值是固定的,同時一個人每天所能砌的磚也是有限度的,這就會導致砌磚工人,不管多么努力,其收入水平必然會被限制到某一個較低的水平,只要他的工作還只是砌磚,而不是設計師或別的什么。這種限度是由這一工作的內涵所決定的,倒不是誰遭到了歧視。
再類比到軟件行業里,單純的在既定接口下實現已定義的業務邏輯就是技術路徑比較短的工作,是體力密集型的;而分析業務邏輯,控制整體架構或者去研究TTS的算法則是智力密集型的,技術路徑較長。
這樣一來上面問題的答案就更清楚一些了。如果你所處的地方其商業模式允許較長的技術路徑,那就可以更多的關心技術,否則就要橫向展開而不能只盯著技術。
程序員的兩個進階模式
這背后事實上隱含了兩種進階的模式:
一是達到一定高度橫向展開。比如:編程語言,(金融)業務邏輯,外語,網絡知識等組合在一起就可以成為一個高地,這里面編程語言上一個人可能不如天才程序員,業務邏輯上可能不如銀行員工,外語可能不如專職翻譯,但每多一重過濾,就會導致高地的海拔拔高一分,最終轉換為稀缺性。
一是徹底的專家型道路。有的崗位可能不需要把面擴的很寬,比如做TTS,OCR的算法,有些人甚至編程語言都可能不是了解的很熟,但確實可以是某一方面的專家。這同樣是一種價值高地。在這個方向上,一旦真的達到一定高度,那就不是單純的累積數量可以超越的。比如:認為100個或多少個平庸的科學家等價于一個愛因斯坦無疑的是愚蠢的。
而考慮這種進階模式時要與自己身處的環境相結合。一般來講越大越牛的公司越能支持比較專業化的分工,創業公司怎么可能有人去鉆研OCR算法。上述觀點在創業公司上展開就會關聯到近來總有人說的全棧不全棧的話題,全棧顯然走的是橫向展開的路數,它在初期打造產品的角度上性價比比較好,但技術深度肯定會弱些。但全棧工程師確實會比較契合于小團隊靠產品打天下的模式。
這類橫向展開的關鍵是:你可以完整的搞定一件很有商業價值的事情,而這件事情大多數人搞不定。比如說:
- 我可以主導開發一款手機,因為我即懂軟件又懂硬件,也還知道如果開發一款良好的產品。
- 我可以帶領隊伍搞定這個銀行的整個系統。
- ……
最后想補充的兩點是:
年青的時候總是希望有一個迅速解決問題的方法,比如如何搞定一份好的簡歷再搞定一份好的工作?如何和上級談漲工資成功幾率比較大?近來V眾投上也在探討這類問題,比如:大家都是怎么跟領導提要求漲工資這事兒的? 一份好的簡歷應該有哪些內容? ……對此我的觀點是不能說這類技巧不重要,但是在年紀小時,這些都沒有確保自己在一條正確的增值路上重要。而怎么走在正確的增值路上,很多人也希望有一個立刻且明確的答案,而不耐煩做點思考,偏偏這也是不可能的,你最少要考慮怎么在指定環境下更好的去增值,怎么提高自己的表達力,怎么選擇合適的平臺,怎么創造自身的稀缺性。
另一點補充是寫上面這些文字時沒考慮興趣的影響,更多的考慮的是利害,因為興趣是絕對主觀的,想干什么就干什么好了,一個人如果確實認為興趣更重要,那就可以忽略上面的觀點,只做自己喜歡做的事情。
作者介紹:李智勇,V眾投發起人,《完美軟件開發:方法與邏輯》作者。目前正在免費發布《程序員生存定律》,微博:李智勇SZ,微信:vfacebook。
《暢言》第七期:【[暢言]企業號會是微信的滑鐵盧么?】微信企業號,是微信推出針對企業管理的平臺,企業號能在移動互聯網上,為企業提供對內部員工的管理、溝通與服務。強大的微信介入這個領域,讓很多做企業軟件的有一種狼來了的感覺,但這種感覺靠譜嗎,微信能成功嗎?
《暢言》第八期:【[暢言]讓軟件公司的管理多一點“靈魂”】不少軟件公司的成功是源自產品、人口紅利,而不是因為管理,甚至有的公司的管理帶來的是負值。這樣的公司之所以成功,只是因為正面值太大。而另外一面,現實中很多的軟件公司,其管理很可能已經陷入了困境。而這是慢性毒藥,帶來了惡性循環。如何解決?
