摘要:世界上沒有技術(shù)驅(qū)動(dòng)型公司,不論Google、Facebook,還是騰訊、阿里,都不是技術(shù)驅(qū)動(dòng)型公司。

因?yàn)榧夹g(shù)不是源頭,需求才是。因此一切技術(shù)問題,都要服從產(chǎn)品交付和市場(chǎng)反饋。
所以,任何公司,都不可能以技術(shù)去驅(qū)動(dòng)自身。人可以以技術(shù)驅(qū)動(dòng)自己進(jìn)步,但公司不行。
一家公司可以以技術(shù)切入某個(gè)市場(chǎng),但如果它想生存下去,就一定不能以技術(shù)為導(dǎo)向,堅(jiān)持以技術(shù)為導(dǎo)向的公司的生命力為零,其下場(chǎng)有兩個(gè):破產(chǎn)或者在破產(chǎn)之前被收購(gòu)。
如果你真的很癡迷鉆研技術(shù),請(qǐng)讀研讀博最后留校或者進(jìn)研究院讓國(guó)家用納稅人的錢養(yǎng)你。
資本富集的地方,人都得加班,加班的本質(zhì),是人跟著機(jī)器跑、人跟著錢跑;更為本質(zhì)地說,資本富集的地方,人作為勞動(dòng)力,也是資本的一種。
即,人是資本而不是人本身。資本的運(yùn)轉(zhuǎn)是不能停的,因?yàn)橥R幌聯(lián)p失的錢太多了。
中國(guó)、外國(guó),都一樣。
知道發(fā)達(dá)國(guó)家為什么產(chǎn)業(yè)工人不加班嗎?
因?yàn)橹圃鞓I(yè)已經(jīng)不是這些國(guó)家主要?jiǎng)?chuàng)造財(cái)富的領(lǐng)域了。發(fā)達(dá)國(guó)家資本富集的地方是金融行業(yè),所以西方國(guó)家的金融狗一樣加班。
勞動(dòng)法?加班費(fèi)?都不存在的。勞動(dòng)法和加班費(fèi)只有在資本離開這個(gè)市場(chǎng)后才能給你保證。
一般公司的策略是:付給你高于其他行業(yè)的薪水、換取你“自愿”加班。不想加班的同學(xué)們,你們可以去考公務(wù)員或者去歐洲做IT,我保證你不加班、不但不用加班,你甚至?xí)e出病。
IT是工科,不是理科,和IT行業(yè)相似度最高的行業(yè)是蓋樓房。真的,相似度相當(dāng)驚人。
IT領(lǐng)域最重要的是經(jīng)驗(yàn)而不是你有多聰明,不聰明的人或者更準(zhǔn)確地說不適合做這個(gè)行業(yè)的人,大學(xué)畢業(yè)后就改行了。
記?。耗阕龅煤貌缓茫蝗Q于你是否聰明,而取決于你是否愿意不斷讀書不斷學(xué)習(xí)和不斷積累。因此,如果你打算投身這個(gè)行業(yè)而你還在學(xué)校,請(qǐng)抓緊一切時(shí)間多讀書。
公司是你創(chuàng)造財(cái)富的地方,公司不是學(xué)校。
你可以在工作中學(xué)習(xí),但你不能放下工作然后去學(xué)習(xí)除非你的工作已經(jīng)做完了。
能大規(guī)模商用的技術(shù),都不需要智商,否則這種技術(shù)就不可能規(guī)?;D承┏绦騿T們,請(qǐng)停止你們的蜜汁自信。
技術(shù)棧,一旦確立了,就很難改了。一個(gè)技術(shù)人員是如此,一家公司也是如此。根本原因是:每一個(gè)棧的size都太深了……就像是ulimit -s unlimited過一樣。
一個(gè)程序員,應(yīng)該花80%的時(shí)間做代碼設(shè)計(jì)、畫UML圖、畫時(shí)序圖,20%的時(shí)間寫code和debug;菜鳥程序員的這個(gè)比例恰好是反的。
一句話,不論這個(gè)需求有多緊急,你都一定要“想好再動(dòng)手”;“想好”的標(biāo)志就是設(shè)計(jì)文檔寫好了;文檔一旦寫好,寫代碼就是純粹的無腦工作。
寫文檔的目的是讓你在code的時(shí)候,不需要停下來思考更不需要推倒重來。如果沒有文檔也可以做到這一點(diǎn),你當(dāng)然可以不寫文檔同時(shí)思考下自己水平這么高是不是可以要求升職加薪了……或者,你是不是在做無聊的if else編碼工作?
英語(yǔ),很重要。能否使用英語(yǔ)查閱資料,是區(qū)分技術(shù)人員水平的重要指示之一。寄希望于“有人遲早會(huì)翻譯成中文”的人是愚蠢的、是會(huì)被淘汰的。
要有分享精神,不要擔(dān)心你知道的東西告訴了別人你就沒價(jià)值了。你最大的價(jià)值在于你知道那些東西的過程,而不是那些東西本身。
你愿意和別人分享別人自然也會(huì)愿意和你分享,最終達(dá)到1+1大于2的效果。不分享,就像一個(gè)失去了互聯(lián)網(wǎng)的程序員,試問他還能創(chuàng)造多少價(jià)值?恐怕他連日常工作都無法展開了。
持有“我把別人知道的都學(xué)會(huì)、我把自己知道的都藏起來別讓別人學(xué)去”想法的人,其實(shí)是默認(rèn)全世界只有你聰明別人都是傻瓜,這樣的人,在信息傳輸成本高的時(shí)代,可以活下去,但是在今天這個(gè)時(shí)代,他們的路會(huì)越走越窄最后會(huì)自己走入死胡同。
當(dāng)然,如果你真的知道了了不得的黑科技,那就請(qǐng)你保護(hù)好自己的知識(shí)產(chǎn)權(quán)然后自己開公司玩吧。
工作要有熱情。
智商決定你的起點(diǎn)情商決定你能走多遠(yuǎn)爬多高;混職場(chǎng),靠的是情商。情商高就是:別人愿意和你一起工作、你有問題的時(shí)候別人愿意幫你。智商有時(shí)候可以稍微彌補(bǔ)一下情商但不起決定性的作用。
現(xiàn)代管理學(xué)的精髓,就是讓每個(gè)人(包括老板本人)都變得可替代。如果你覺得自己不可替代,要么是你的錯(cuò)覺,要么是你在一家管理非常原始的、搖搖欲墜馬上要完蛋的公司。
怎樣讓程序員變得可替代?三個(gè)字:寫文檔。不愿意寫文檔的程序員,應(yīng)該立刻馬上毫不猶豫地開掉。程序員工作創(chuàng)造的價(jià)值,至少一半是通過文檔體現(xiàn)出來才對(duì)。
“一個(gè)項(xiàng)目換一個(gè)人就要讓項(xiàng)目大地震一下、解決bug換一個(gè)人就不行因?yàn)橹挥欣先酥酪哪囊恍械哪膫€(gè)關(guān)鍵字?!?/p>
這不說明這個(gè)項(xiàng)目所涉及的技術(shù)有多復(fù)雜、不說明這個(gè)老人是什么技術(shù)大牛,而只說明這個(gè)項(xiàng)目的項(xiàng)目經(jīng)理是蠢貨因?yàn)檫@個(gè)項(xiàng)目已經(jīng)失控了。
文檔不是事無巨細(xì)的流水賬,寫文檔以及組織文檔是需要智商的、是需要架構(gòu)師去設(shè)計(jì)的。美國(guó)的航天飛機(jī)那么復(fù)雜,但是在pilot手里的手冊(cè)也就那么多,而這個(gè)手冊(cè)可以在航天飛機(jī)出問題的時(shí)候協(xié)助pilot快速定位絕大多數(shù)問題。
不可替代的打工者只有一種:以中高層領(lǐng)導(dǎo)的身份跟完了一個(gè)項(xiàng)目而且這個(gè)項(xiàng)目正處于大紅大紫的階段,公司為了防止你跳槽到競(jìng)爭(zhēng)對(duì)手那里,愿意付給你薪水養(yǎng)著你天天在辦公室喝茶。只要項(xiàng)目一直紅著,公司就愿意一直養(yǎng)著你。
讀完這個(gè)答案后如果你覺得我是一個(gè)輕視技術(shù)的人,那么恭喜你,你和我一樣,是一名杠精。杠精讀別人的回答,永遠(yuǎn)不會(huì)去正面理解,而只會(huì)想盡一切辦法找這個(gè)答案的漏洞。
“開發(fā)人員的文檔的作用”
給正在code的自己看、給幾個(gè)月后已經(jīng)忘記這個(gè)模塊當(dāng)初是怎么開發(fā)的自己看、給要接手自己工作的新人看、給周邊有關(guān)聯(lián)開發(fā)任務(wù)的同事看、給領(lǐng)導(dǎo)等有關(guān)人員看、產(chǎn)品出bug的時(shí)候用來和別人懟的武器。
如果沒有文檔,這些工作量都會(huì)成倍增長(zhǎng)。
代碼再精簡(jiǎn)再直觀,也不可能有人類語(yǔ)言直觀,誰覺得自己厲害到讀代碼和讀人類語(yǔ)言寫的文檔速度一樣快讀地步,我給你個(gè)我上大學(xué)時(shí)候?qū)懙男〕绦颍闊┠阕x一下代碼,看看你多長(zhǎng)時(shí)間可以看明白:https://github.com/YvesZHI/FallingCode
這段代碼本身并不復(fù)雜,應(yīng)該說非常簡(jiǎn)單,但是沒有文檔……讀讀看吧。
簡(jiǎn)而言之,文檔,就像蓋樓房的設(shè)計(jì)圖,沒有圖紙,你是不能開始搬磚的。
領(lǐng)導(dǎo)有沒有給你看需求分析文檔?有沒有拿著需求分析文檔給你宣講你要做什么?沒有?不干活;
測(cè)試的同事有沒有給你看測(cè)試用例文檔?有沒有給你宣講?沒有?不干活;
你自己明白領(lǐng)導(dǎo)的意圖了嗎?明白測(cè)試同事的意圖了嗎?
想明白后,開始想自己要開發(fā)的模塊里的各個(gè)功能模塊之間的關(guān)系,可以畫時(shí)序圖;時(shí)序圖畫完了,看看是否有(可能)頻繁變化的模塊/需求。
如果有,請(qǐng)務(wù)必使用一些設(shè)計(jì)模式,如果要用設(shè)計(jì)模式,請(qǐng)務(wù)必畫UML類圖,如果沒有頻繁變化的模塊/需求,請(qǐng)一定不要用設(shè)計(jì)模式。
最后,看看在一個(gè)功能模塊中,有沒有邏輯比較復(fù)雜的地方,如果有,請(qǐng)畫流程圖;模塊和模塊之間有沒有需要明確的協(xié)議?
如果有,請(qǐng)把協(xié)議寫出來。
上面這一段話,就是你要寫的文檔,這個(gè)文檔的讀者主要是你,在你的模塊出問題之前,別人通常不會(huì)讀這個(gè)文檔(不排除你的領(lǐng)導(dǎo)會(huì)要求看你這個(gè)文檔)。
如果你既不需要時(shí)序圖又不需要類圖又沒什么協(xié)議需要明確,那么,你就可以不寫這個(gè)文檔。另外,如果這個(gè)文檔寫得好,你的代碼是不需要任何注釋的。
“技術(shù)驅(qū)動(dòng)”
一些朋友認(rèn)為我對(duì)“技術(shù)驅(qū)動(dòng)”有誤解,對(duì)此我不想辯論了。
上面那段話就是我想對(duì)后輩說的。什么意思呢?就是告訴后輩,如果一家公司打著“我們是技術(shù)驅(qū)動(dòng)型公司”的名號(hào)在招人,那么如果你決定要去這家公司,我勸你一定要想好考察好。
為什么呢?
因?yàn)槲抑浪哪蔷洹凹夹g(shù)驅(qū)動(dòng)”很吸引你你想學(xué)東西,但是對(duì)小公司來說,它最大的任務(wù)是活下去,然后才是其他,我不是說小公司學(xué)不到東西,我只是說小公司很難很難做到真正的技術(shù)驅(qū)動(dòng)。
評(píng)論區(qū)有人堅(jiān)持認(rèn)為微軟這種公司是技術(shù)驅(qū)動(dòng),這個(gè)問題我后面會(huì)專門補(bǔ)充,目前我只能說:我是沒見過微軟大張旗鼓地說自己是什么“技術(shù)驅(qū)動(dòng)”公司然后忽悠新人。
“技術(shù)驅(qū)動(dòng)2”
看來有不少朋友愿意和我糾結(jié)這個(gè)“技術(shù)驅(qū)動(dòng)”的問題,那我就和你們杠一杠。
我以華為為例來說說。
華為成功的內(nèi)在原因,早就敲鑼打鼓地告訴全世界了:以客戶為中心,以?shī)^斗者為本,長(zhǎng)期艱苦奮斗,堅(jiān)持自我批判。
這四句話,沒一句是直接和技術(shù)相關(guān)的。
這里我先特別聲明一下,我不是說,技術(shù)人員在華為就不會(huì)搞技術(shù)、不會(huì)提升自己的技術(shù)水平、華為的技術(shù)水平差。
華為的技術(shù),不需要我多說,全世界的人都是有目共睹的,華為公司的技術(shù)專利數(shù)就擺在那里,那是誰也抹殺不了的;華為公司里的技術(shù)大牛,多了去了;但在這里,我要說的還是第一段的意思:一個(gè)人可以以技術(shù)驅(qū)動(dòng),但一家公司不行。
華為公司的核心理念,本質(zhì)就是“成就客戶”,你把客戶成就了,你就也把自己成就了,華為不是先成就自己再去成就客戶的公司。
你去華為工作,你可以以技術(shù)驅(qū)動(dòng)自己,但華為不能這樣做。這一點(diǎn)和微軟與IBM的合作極其相似:IBM說,你們微軟現(xiàn)在搞的東西我愿意用,但是我需要你們給我搞個(gè)操作系統(tǒng),這樣我們才能繼續(xù)合作。
然后微軟怎么做的呢?它馬上購(gòu)買了另外一家公司搞的DOS操作系統(tǒng),然后直接授權(quán)給IBM使用。
這里面有四個(gè)問題需要各位杠精們思考:
1. 為什么那家開發(fā)DOS的公司沒能直接和IBM合作?
2. 微軟購(gòu)買DOS系統(tǒng)的錢哪里來的?
3. 微軟為什么不自己開發(fā)操作系統(tǒng)?
4. 技術(shù)在前三個(gè)問題中的角色和作用是什么?
至于評(píng)論區(qū)有朋友說Intel是技術(shù)驅(qū)動(dòng)公司,我建議他去了解一下Intel為什么放棄了手機(jī)市場(chǎng):重點(diǎn)關(guān)注Intel決定放棄手機(jī)市場(chǎng)的原因,然后你就會(huì)發(fā)現(xiàn),這個(gè)原因的本質(zhì),就是一種技術(shù)情節(jié)的產(chǎn)物。
Intel放棄手機(jī)市場(chǎng)與華為決定進(jìn)軍手機(jī)市場(chǎng)是截然不同的。
華為本來是做基站、路由器和交換機(jī)的,這是它的主營(yíng)業(yè)務(wù)。那么華為為什么決定進(jìn)入手機(jī)市場(chǎng)?
是什么原因驅(qū)使華為在沒有任何技術(shù)積累的前提下進(jìn)入手機(jī)市場(chǎng)、以至于最初華為的手機(jī)被華為員工戲稱為“暖手寶”倒貼錢都沒人愿意用但現(xiàn)在華為手機(jī)如此成功?
所以,我還是那個(gè)觀點(diǎn):世界上沒有技術(shù)驅(qū)動(dòng)型公司。我本人就是程序員,我一直都以技術(shù)在驅(qū)動(dòng)自己我一直都在努力提升自己的技術(shù)水平但是我還是要說:世界上沒有技術(shù)驅(qū)動(dòng)型公司。
“技術(shù)驅(qū)動(dòng)3”
一個(gè)新的team要開發(fā)一款軟件。
它首先要解決的問題,是在產(chǎn)品1.0開發(fā)出來并且賺到錢之前這個(gè)team的經(jīng)費(fèi);
其次,它要提前找好產(chǎn)品的客戶群和可能存在的銷售渠道并且做完相應(yīng)的工作;
再次,它要做產(chǎn)品規(guī)劃,如什么時(shí)候出1.0版本的產(chǎn)品、哪個(gè)模塊開發(fā)大概要多久、什么類型的問題可以暫時(shí)擱置什么類型的問題不能擱置要組織攻關(guān)組公關(guān)等(全是項(xiàng)目管理相關(guān)內(nèi)容,和技術(shù)沒有直接關(guān)系)。
最后,進(jìn)入產(chǎn)品開發(fā)階段。
一旦進(jìn)入產(chǎn)品開發(fā),就像工廠的流水線一樣,是不可能出現(xiàn)什么導(dǎo)致產(chǎn)品開發(fā)進(jìn)行不下去的技術(shù)難點(diǎn)的(否則技術(shù)leader就是白癡這種產(chǎn)品應(yīng)該在頭腦風(fēng)暴階段就被拍死才對(duì))。
所以,“期望出現(xiàn)什么決定產(chǎn)品生死的技術(shù)難點(diǎn)然后自己nb閃閃地搞定”這種事情,是不可能發(fā)生的。
同時(shí),在開發(fā)過程中,難免出現(xiàn)各種意料之外的bug。
比如,你負(fù)責(zé)的模塊出現(xiàn)了三個(gè)bug,其中一個(gè)是必現(xiàn)問題且直接影響功能實(shí)現(xiàn),那這個(gè)一定要搞定的。
如果你搞不定,team會(huì)找其他老手和你一起攻關(guān),攻關(guān)結(jié)果有兩種,一種是bug解決了但是不知道為什么,另一種是bug解決了也知道了是為什么。
對(duì)于第一種情況,team是不會(huì)讓你“潛心研究幾個(gè)月最后找到了原因”的,為什么?
因?yàn)槟氵€有后續(xù)工作要完成而這個(gè)bug已經(jīng)解決了不影響用戶使用了,什么時(shí)候才有可能讓你繼續(xù)跟進(jìn)這個(gè)問題呢?
1.0版本的產(chǎn)品市場(chǎng)反饋符合預(yù)期且公司決定要繼續(xù)投入搞2.0版本 ———只有這個(gè)條件滿足,你才有可能繼續(xù)跟進(jìn)這個(gè)問題,為什么是有可能呢?
因?yàn)檫@個(gè)bug已經(jīng)不影響客戶使用了,沒必要投入人力去搞了,你如果花幾個(gè)月的時(shí)間去找這個(gè)bug的原因,那么請(qǐng)問:2.0版本的工作誰做?
在很多項(xiàng)目中,類似這種“問題解決了但是不知道原因的bug”現(xiàn)象,是比較常見的,很多時(shí)候,直到這個(gè)產(chǎn)品生命周期結(jié)束,這些bug的原因都沒有找到。
因此,“期望碰到神秘bug然后自己潛心研究幾個(gè)月終于把原因找到”這種事情,很多時(shí)候是不存在的。
接著上面的“三個(gè)bug”繼續(xù):另外兩個(gè)bug,是概率發(fā)生且發(fā)生概率很低。這個(gè)時(shí)候如果工期比較趕,公司會(huì)想辦法繞過去這兩個(gè)bug,比如定時(shí)重啟服務(wù)器、定時(shí)清理緩存等(這些方法通??梢岳@開低概率bug),不會(huì)給你“潛心研究三個(gè)月然后把bug解決”的機(jī)會(huì)的。
什么時(shí)候才有可能讓你繼續(xù)研究這兩個(gè)bug呢?
和第一個(gè)bug一樣,只有在后續(xù)繼續(xù)開發(fā),才有可能讓你繼續(xù)跟進(jìn)。
現(xiàn)在,請(qǐng)各位再重新品味一下“技術(shù)驅(qū)動(dòng)”這個(gè)詞。到底什么是技術(shù)驅(qū)動(dòng)?其實(shí)這個(gè)詞真正的含義就是:
我們公司效益很好能養(yǎng)活nb的技術(shù)團(tuán)隊(duì)所以產(chǎn)品能不斷迭代演進(jìn)開發(fā),隨著產(chǎn)品的不斷迭代,技術(shù)人員有可能會(huì)遇到一些其他公司遇不到的問題。
所以,如果一家新成立的小公司說自己是技術(shù)驅(qū)動(dòng)的……連1.0版本的產(chǎn)品都沒有就敢說自己是技術(shù)驅(qū)動(dòng)?你信嗎?不管你信不信,反正我不信。
簡(jiǎn)而言之,“技術(shù)驅(qū)動(dòng)”的同義詞就是“我們公司很有錢”+“我們公司不是炒股炒房而是做產(chǎn)品的公司”。至于為什么不直接這么說呢?
這是因?yàn)檫@種說法不容易被十年寒窗苦讀潛心研究技術(shù)的同學(xué)接受……被“技術(shù)驅(qū)動(dòng)”迷惑的同學(xué),其實(shí)就是讀書讀傻了,什么叫“讀書讀傻了”?就是把社會(huì)和學(xué)校等同成同樣的東西……
“很有錢的做IT產(chǎn)品的公司”,這個(gè)世界上當(dāng)然是有的,但是這樣的公司,根本不會(huì)用“技術(shù)驅(qū)動(dòng)”這種詞來忽悠新人。
最后,隔行如隔山但隔行不隔理。如果你讀完上面的東西,對(duì)自己所處的行業(yè)有了進(jìn)一步的認(rèn)識(shí),我以為,是很正常的。
請(qǐng)登錄以參與評(píng)論
現(xiàn)在登錄