何為工程師思維?
編輯導(dǎo)語:無論是在生活、還是工作中,“工程思維”,也許會是你必備的思維模式之一;這一思維方式要求人們找到事物潛在的結(jié)構(gòu),并對未來交付結(jié)果有所評估,做好平衡取舍。本文作者就對“工程思維”做了分析解讀,一起來看一下。
之前有思考過:
“懂得很多道理,依然過不好一生”到底是哪里的問題?聽過不同的答案,如:停留“知道”的舒服區(qū)、別人道理未必適用自己、甚至能力欠缺等諸如此類的回答。
后來發(fā)現(xiàn)這是「工程問題」。
把每個道理嚼碎如同把手機(jī)拆開了解每個部件一樣,若把手機(jī)再裝回去不能做到了解就夠,還要親自實(shí)驗(yàn)一遍。
不過歷史告訴我們,就算不懂原理依然可以造出手機(jī),技術(shù)和工程都跑在科學(xué)前面。
不信你幻想下,幾百年前沒有優(yōu)質(zhì)教育體系時,四大發(fā)明如何出來的?
再把視角轉(zhuǎn)向商業(yè),中底層員工往往“經(jīng)濟(jì)金融類出身”較多,而核心高管團(tuán)隊(duì)總有幾個理工科人士;他們思維有什么區(qū)別?
文科生邏輯更擅長從原有特征推演分析做決策,理科生更講究遇到問題客觀看待事物、從根本上進(jìn)行改變,這背后直接影響到“公司的運(yùn)作效率”。
就連百度創(chuàng)始人李彥宏,在新工科技論壇上也曾說:每個人都要具備工程思維,這也是許多畢業(yè)生的短板,要深度了解它不妨從“軟件工程”說起。
一、工程思維是什么
市面PM、開發(fā)、測試以及運(yùn)維所做的工作均屬于軟件工程「代碼080902」,是現(xiàn)在大學(xué)主流的專業(yè)之一;學(xué)習(xí)內(nèi)容包括數(shù)據(jù)結(jié)構(gòu)、算法、人際交互、需求分析等模塊。
在英文環(huán)境中,工程(engineering)的檔次要比科學(xué)(science)低很多,為什么?
主要原因是,軟件從誕生之日起一直解決不好「交付問題」,即:項(xiàng)目不能按照履約時間、質(zhì)量、成本完整交給客戶。
為解決此疑難雜癥,1968年10月北約科技委員會的專題會上,思考者們才真正提出“軟件工程”的概念,它是什么呢?用軟件的手段去滿足客戶需求嗎?并非如此。
方便理解,舉個例子:
在某工廠包裝車間產(chǎn)品線經(jīng)常出現(xiàn)“漏裝問題”,客戶收到貨后打開包裝一看是空的。
于是負(fù)責(zé)人找專家詢問解決辦法,專家建議裝上監(jiān)控系統(tǒng),通過視頻識別操作就不會出現(xiàn)此現(xiàn)象。
得知改造下來需要百萬費(fèi)用,廠長當(dāng)場掀桌子決定「內(nèi)部開會解決」,有位老師傅說很簡單:
我們只需通過測量產(chǎn)品重量,然后在流水線最后裝個大型吹風(fēng)機(jī),把它設(shè)定到相關(guān)風(fēng)力即可。
若包裝盒被吹跑證明就是空的,若沒有則是完整的,眾人怒贊得到老板賞識。
據(jù)此,工程的目的是客戶需求的問題,至于解決的手段,只要在限定條件內(nèi)是否用軟件顯得并不是那么重要。
計(jì)算機(jī)專業(yè)中,清華大學(xué)出版的教科書《軟件工程—理論與實(shí)踐》開篇談道:
一位計(jì)算機(jī)芯片從業(yè)者認(rèn)為代碼是解決芯片問題的唯一辦法,但一位軟件工程師,只不過把軟件當(dāng)做滿足客戶需求的其中一個辦法唯一。
所以,工程學(xué)指滿足客戶需求為目的的一門學(xué)科,而非單純地開發(fā)軟件。
它需要將客戶的需求捕捉、分析、進(jìn)行定義,并給出整體的系統(tǒng)需求,并分解各子系統(tǒng);直到每個細(xì)節(jié)的需求可以由一個現(xiàn)有的組件直接滿足,或通過修改滿足。
而工程思維最大的特點(diǎn)是“要把事情做成”,也就是可交付、可使用、并做到開源節(jié)流”。
換個視角來看定義:
特斯拉、SpaceX創(chuàng)始人埃隆·馬斯克(Elon Musk)并非是技術(shù)工程天才,從他創(chuàng)業(yè)發(fā)展史可看出橫跨三大領(lǐng)域(互聯(lián)網(wǎng)、清潔能源、太空)。
似乎三者并沒有直接聯(lián)系,為什么能夠如此游刃有余呢?主要有兩大要素:工程思維,第一性原理。
在某采訪中有人問他,制造火箭降低成本這件事NASA那么多專家都沒做到,為什么SpaceX能完成,他回答說“我想,是因?yàn)樗麄冑Y源太多了”。
這如同他優(yōu)化特斯拉電池組一樣,首先思考該目標(biāo)是否可能,其次從商業(yè)和第一性原理出發(fā),再研究電池的材料的組成部分。
進(jìn)而通過可操作路徑想辦法找到這些材料,然后逐步壓縮每個材料的成本,最后組裝完成就擁有更便宜的電池。
也就是說,他認(rèn)為每件產(chǎn)品(項(xiàng)目)依賴于結(jié)構(gòu),我們只需在封閉的結(jié)構(gòu)中不斷得拆解、類比、優(yōu)化、模仿就能把它完成。
再比如說:
某航空公司做了一個關(guān)于顧客體驗(yàn)的調(diào)研,詢問他們有什么期待?得到的結(jié)果是期望早點(diǎn)兒到達(dá)目的地,或提高安檢、托運(yùn)的時間。
幾個專家視角給出的答案均不同,空氣動力學(xué)家認(rèn)為,前者如何讓飛機(jī)飛得更快,涉及到動力以及元件的整體改造問題,后者需要優(yōu)化安檢與托運(yùn)流程。
但系統(tǒng)工程給出的答案是,解決快的問題,要從去機(jī)場、找停車位、安檢、托運(yùn)整體進(jìn)行優(yōu)化。
對比上述中廠長優(yōu)化流水線的事件,你會發(fā)現(xiàn)也有擁有同樣規(guī)律,老師傅基于封閉狀態(tài)節(jié)省成本的條件,拆解環(huán)節(jié)查漏補(bǔ)缺來解決根本問題。
谷歌早期用互聯(lián)網(wǎng)做地圖并沒有效仿的人,它也是典型軟件工程思維。
在封閉任務(wù)中用克服種種困難,把每條段路精確到厘米級別,然后用激光掃描避開路面障礙,以便車子開的過程中了解路況。
說到這里,幻想下那些互聯(lián)網(wǎng)當(dāng)紅的企業(yè)家們,無疑均為工程思維運(yùn)用的高手,阿里的王堅(jiān)、今日頭條的張一鳴、美團(tuán)的王興,甚至華為的任正非。
他們善于預(yù)判并在沒有結(jié)構(gòu)的情況下「預(yù)見結(jié)構(gòu)」,并進(jìn)行通盤頂層設(shè)計(jì),然后從第一性出發(fā)來改善根本要素。
明白工程思維,把視角拉高也能理解眾多社會問題,比如:
現(xiàn)在可以看到2035年北京地鐵規(guī)劃圖,2030年碳達(dá)峰的行動方案和能源綠色低碳發(fā)展制度;這種可預(yù)測能力不正是每個普通人(企業(yè))應(yīng)該學(xué)習(xí)的嗎?
二、工程思維三要素
結(jié)合中信出版社,經(jīng)濟(jì)管理類書籍《轉(zhuǎn)向:用工程師思維解決商業(yè)難題》,我總結(jié)發(fā)現(xiàn)工程思維有三大特點(diǎn):
- 找到結(jié)構(gòu);
- 約束性設(shè)計(jì);
- 懂得取舍。
首先在沒有結(jié)構(gòu)的情況下,第一個特點(diǎn)是工程師能從初步的概念到構(gòu)想,看到潛在的結(jié)構(gòu)。
也就是說不僅關(guān)注看得見的事物,也包括看不見的事物;并非空于幻想,而要結(jié)合實(shí)際做演繹。
他要考慮系統(tǒng)中各個元素,怎么在邏輯、時間、順序以及功能方面進(jìn)行有效鏈接,并分析元素在哪些條件下能夠起作用,哪些條件下不起作用。
例如:牛頓的經(jīng)典力學(xué)理論是建立在“科學(xué)觀”上。
以若干基本的公理(原理)為基本假設(shè)做推導(dǎo);公理無法佐證部分通過嚴(yán)謹(jǐn)?shù)倪壿嫹治龅玫饺舾啥ɡ恚瑥亩粩鄬碚擉w系進(jìn)行完善。
假設(shè)通過觀察、實(shí)驗(yàn)等手段得出的證據(jù)符合結(jié)果,我們對驗(yàn)證越有信心;但若出現(xiàn)結(jié)果不符的地方,進(jìn)而看看是否推導(dǎo)錯誤然后進(jìn)行修補(bǔ)。
此類案例有很多:
瓦特基于“經(jīng)典力學(xué)”發(fā)明(改造)了蒸汽機(jī),計(jì)算機(jī)科學(xué)之父艾倫·麥席森圖靈1936年提出《論數(shù)字計(jì)算在決斷難題中的應(yīng)用》,多年后工程師基于此發(fā)明了計(jì)算機(jī)和智能手機(jī)。
換言之,世界依賴于結(jié)構(gòu);有經(jīng)驗(yàn)的工程師能在看似一團(tuán)亂麻的事物中找到合理性的結(jié)構(gòu),在產(chǎn)品誕生前預(yù)判到成熟的全貌。
其次,正如“無規(guī)則的邊界的自由”不叫自由,無約束的工程也不能成為工程一樣,工程會遇到各種條件性的限制,如時間不夠、資金不足等。
那么第二個特點(diǎn)是「在有約束的狀態(tài)下」也要更好得完成目標(biāo),甚至說沒有約束狀態(tài),也要形成自驅(qū)動力。
好比2020年黑天鵝事件(COVID-19),原本正常狀態(tài)下兩年才能完成的雷神山醫(yī)院,從方案設(shè)計(jì)到建成交付僅用10天時間,被譽(yù)為“中國速度”;該工程最大的約束條件是“時間”。
正因如此,反過來看約束條件是某些創(chuàng)造性項(xiàng)目的動力,運(yùn)用到企業(yè)場景,假設(shè)產(chǎn)品開發(fā)中拿到一個開放需求,你很難想象出最后產(chǎn)品成為什么模樣。
尤其對菜鳥工程師、產(chǎn)品經(jīng)理來說不懂得自帶約束條件,過程中牽扯出來眾多雜亂問題,如:
UI設(shè)計(jì)太差、用戶需求沒搞清楚、流程有多重方案、任務(wù)太多時間不夠……..
這造成,永遠(yuǎn)開不完的會,解決不了的細(xì)節(jié)讓自己身心疲憊;我看到很多個人在做任務(wù)時有此類現(xiàn)象,公司也同樣,根本原因只怪「不會設(shè)計(jì)約束性條件」。
再者第三點(diǎn)和取舍有關(guān)系,若把約束性比作走鋼絲,那取舍便是在可行性、可能性、可期待性的交叉拔河;你也可以把它理解成“魚和熊掌不可兼得”。
如同:
新能源和電子行業(yè),一款產(chǎn)品研發(fā)過程中熱設(shè)計(jì)工程師要和結(jié)構(gòu)、軟件工程師以及PM之間相互溝通,多數(shù)情況下就不得不做出取舍。
在圖紙的具體位置上,甚至犧牲掉軟件的散熱部分或者壓縮電池整體空間,以保證產(chǎn)品系統(tǒng)穩(wěn)固性。
因此,「取舍什么」是工程師具體的能力體現(xiàn),建立該關(guān)鍵不僅表現(xiàn)在如何設(shè)計(jì)重點(diǎn),還要研究資源分配的問題,甚至將弱目標(biāo)從強(qiáng)目標(biāo)中抽絲剝繭出來。
一方面工程師思維的框架我認(rèn)為是系統(tǒng)思維,而不是單一技術(shù)或產(chǎn)品能力。
另一方面他是種「形而上謂之道」的能力,從技術(shù)到「找到結(jié)構(gòu)」的建立比單個解決問題的方法論更有普適性意義。
總而言之,結(jié)構(gòu)、約束、取舍三者是工程思維的法寶,在互聯(lián)網(wǎng)時代它被一些線性的概念蒙蔽,比如:產(chǎn)品思維、項(xiàng)目思維均屬于屬于此大類。
很多人沒有把它用明白的關(guān)鍵要素在“后兩者”,若你能在擁有目標(biāo)、結(jié)構(gòu)的前置條件下,增加約束力懂得取舍,會發(fā)現(xiàn)「完成」的效率會大大增加。
這當(dāng)中對于互聯(lián)網(wǎng)公司的產(chǎn)品人來說,并不是那么容易完成某個項(xiàng)目的原因是什么呢?
我把它總結(jié)為四個字「忽悠思維」,很多軟件公司銷售為沖刺業(yè)績,習(xí)慣對客戶“畫餅”,承諾些產(chǎn)品本身還未做到的功能。
客戶付款后整個交付轉(zhuǎn)移給了研發(fā)團(tuán)隊(duì),最終完成的產(chǎn)品縫縫補(bǔ)補(bǔ)、如老人步履蹣跚的樣子,客戶怎么會滿意?
那么全局思考下來,你會發(fā)現(xiàn)不論是「預(yù)判結(jié)構(gòu)」還是「約束性」的設(shè)計(jì),兩者本身背后代表的是“組塊”創(chuàng)新的能力。
三、工程本身是組塊
此話怎講?組塊(chunk)是人類信息加工中最重要的形式之一;概念是米勒(G.MilJer,1956-1963)提出,主要分為動態(tài)和靜態(tài)兩種。
早些年用在工作記憶中,他注意到某一工作記憶未在10秒內(nèi)復(fù)誦便會消退,同時保存容量最多為7±2個單元。
從動態(tài)視角看,人通過幾個相關(guān)的小項(xiàng)目整合成為一個大項(xiàng)目,減少基礎(chǔ)塊數(shù),從而將信息控制在記憶(物理空間)所容許的范圍內(nèi)。
從靜態(tài)視角看,它是一個名詞,具體指重新編碼的結(jié)果或輸出單位,為便于區(qū)別在英文中通常把前者稱為“chunking”,將后者稱之為chunk。
俄裔美籍作家“弗拉基米爾·納博科夫”(1899-1977)提出的卡片寫作原理與工程師思維的核心“模塊化系統(tǒng)思維”均屬于「組塊」。
他們均指出這不是一項(xiàng)單一的才能,而是技術(shù)與原則融合;原因是:
一個系統(tǒng)因各模塊之間的關(guān)系而成為一個整體,它們不能通過單獨(dú)的分析各組成部分就能理解的。
人的神經(jīng)元也是種組塊,在光學(xué)顯微鏡下可以看到一個神經(jīng)元的軸突末梢經(jīng)過多次分支,最后每個分支的末端呈現(xiàn)杯狀或球狀。
這猶如,你學(xué)習(xí)的知識,慢慢形成聯(lián)結(jié)均來源自于「神經(jīng)元組塊」。
另外,早些年美國行為心理學(xué)創(chuàng)始人華生基于此概念,曾向政府提出一個訓(xùn)練實(shí)驗(yàn)的要求,他說若給我10個健康嬰兒,通過訓(xùn)練,我可以將他們培養(yǎng)成優(yōu)秀學(xué)者、藝術(shù)家。
人們覺得很荒謬,最終沒有完成該實(shí)驗(yàn);若干年后一位匈奴牙的心理學(xué)講師,對他提出的實(shí)驗(yàn)非常感興趣。
然后與他的妻子圍繞三個女兒進(jìn)行培養(yǎng),最后造就了三個女性國際象棋冠軍,這便是著名的「波爾加三姐妹實(shí)驗(yàn)」。
如果你了解該原理,進(jìn)一步看世間萬物均存在“組塊”的現(xiàn)象;隨便舉個例子,如拿書架取書的動作就包含四種組塊:
- 確認(rèn)位置;
- 手抓書脊;
- 控制力度;
- 取出路徑。
每個步驟都是小迷你塊,假如要做一個取書的智能機(jī)器人,那只需把每一個小組塊(活動)編寫一個程序,然后整合創(chuàng)新即可。
要知道程序背后是函數(shù),函數(shù)是邏輯塊,邏輯塊是通用代碼,用計(jì)算機(jī)將每個模塊標(biāo)準(zhǔn)化,最后串聯(lián)就能得到想要的結(jié)果。
就像學(xué)開車,老司機(jī)看到“紅燈”就自然而然完成一系列相關(guān)動作;新手則需一個個動作分解來做。
好比你在工作中遇到的問題看似連貫,實(shí)則包含多個部分,對有經(jīng)驗(yàn)的人而言,他們不會一手抓多個組塊,而是整體分析后從某個組塊下手。
可見,在認(rèn)識自然和文明發(fā)展的過程中,組塊思想與方法無處不在;芯片是組塊,談判策略是組塊,笑臉是組塊,地鐵是組塊,地圖是組塊……
要是沒有組塊的思想也不可能制作成每件衣服,建起一座橋梁;當(dāng)然也不會有家庭,這些組也不過是“形式與內(nèi)容”的不同結(jié)合罷了。
因此,對照自我,你可以思考下自己的工作技能,所需軟能力是不是組塊呢?除外表部分外,哪些薄弱是不是把它拎出來找到規(guī)律刻意練習(xí)就能解決呢?
總而言之,工程的本質(zhì)是實(shí)現(xiàn)。
組塊化應(yīng)用是把一個復(fù)雜問題自頂而上逐層把“系統(tǒng)”分成若干模塊的過程,有多種屬性分別反應(yīng)內(nèi)部特征。
如,典型的低代碼平臺把常用的功能都封好,像樂高一樣,讓使用者快速配置;它追求以價(jià)值為導(dǎo)向,并用「建構(gòu)性的思維以求效率」來創(chuàng)造價(jià)值。
四、工程思維的運(yùn)用
明白這些原理,如何把工程師思維應(yīng)用到日常工作或?qū)W習(xí)上呢?我把它大致分為三個方面。
1. 預(yù)見未來的結(jié)構(gòu)
它分為「結(jié)構(gòu)力」和「預(yù)見」兩個層面,也許你會把前者理解成各種思考模型,如5W2H原則、金字塔、黃金圈理論等,其實(shí)工程中的結(jié)構(gòu)有部分“科學(xué)”元素。
在這里有什么不同呢?
科學(xué)家“仰望天空”居多,很少屑于實(shí)際運(yùn)用;主要闡述認(rèn)識規(guī)律,發(fā)現(xiàn)規(guī)則;好比你經(jīng)常看到科學(xué)發(fā)現(xiàn)新地球、海嘯、巨大恒星等。
而工程講究「腳踏實(shí)地」,將發(fā)現(xiàn)的原理轉(zhuǎn)化并實(shí)際干出來。
也就是,在過程中首先要尊重科學(xué)規(guī)律,考慮多因素實(shí)際所存在的結(jié)構(gòu),再精益求精的持續(xù)改進(jìn)。
對「預(yù)見」,最接近的兩個詞匯是“使命”或“夢想”。
埃隆·馬斯克對火星的迷戀我相信絕對不會是因?yàn)榭苹眯≌f的影響,而是他認(rèn)為自己聚合頂尖技術(shù)人才,然后又懂商業(yè)投資,加上使命的火花,才讓他走上SpaceX的道路。
據(jù)此,作為普通人對我們有什么幫助呢?你不妨思考下自己的使命,夢想是什么?
也許比較天馬行空理想主義,嘗試把它量化成目標(biāo),思考有沒有可能變成實(shí)際動作;只要勤快,拆分下大概率可以實(shí)現(xiàn)。
比如:工作很久的你想成為某個領(lǐng)域?qū)<?,也許只需花1-2年的時間深度學(xué)習(xí)理論知識,然后結(jié)合自我最新認(rèn)知,通過不斷分享就會被人發(fā)現(xiàn),不一而論。
2. 約束內(nèi)找到組塊
盡可能在具體的時間,約束內(nèi)交付出明確“規(guī)?!钡慕Y(jié)果,相比科學(xué)研究就沒有這些限制。
因?yàn)樵陂_始,他們就不知道具體方向在哪里?例如:直到到今天,人類也無法統(tǒng)一相對論、量子力學(xué)。
結(jié)合自身,我覺得擁有清晰的目標(biāo)后,第一步的困難是「最后期限」原則,很多人的未完成均結(jié)束在時間、精力的管理層面。
假設(shè)能克服這一步,接下來要考慮「組塊」的環(huán)節(jié);要嘗試找到形成該結(jié)構(gòu)的最小單元,部分人停滯不前是沒有找到組塊和串聯(lián),最后盲目的付出把精力耗盡。
比如:談鋼琴有組塊、寫作、玩音樂更是相同。
《故事工程》的作者拉里·布魯克斯認(rèn)為,寫作這類看似有靈感的事情都可以采用工程思維設(shè)計(jì),它用工程構(gòu)建的方式將故事創(chuàng)作分為6大核心技能:立意,人物,主題,結(jié)構(gòu),場景,風(fēng)格。
對于普通人所有的一切均可以「公式化」,為保證品質(zhì)你可以多做幾個備份來;查理·芒格在《窮查理寶典》中把它稱為冗余模型(Backup Systems)。
3. 平衡當(dāng)中做取舍
取舍的根本是什么呢?在工程思維中講究“第一性原理”,也就是你基于未來結(jié)構(gòu)的頂層設(shè)計(jì)。
若說組塊是框架中的血液,那取舍關(guān)鍵就是你的「框架」如何設(shè)計(jì);這個框架怎么來呢?我把它總結(jié)成「舊系統(tǒng)」。
試想下,你想做的事情或達(dá)到的狀態(tài),以前有沒有人完成?找到并把他設(shè)計(jì)成動態(tài)對標(biāo)品;私下研究三個方面:學(xué)習(xí)路徑,職業(yè)發(fā)展,成功階段。
美國神話作家“約瑟夫·坎貝爾”在20世紀(jì)50年代出版的《千面英雄》把人的經(jīng)歷分為三個階段,分別是離群所居(separation)、經(jīng)驗(yàn)考驗(yàn)(ordeal)、復(fù)歸本源(return)正是對應(yīng)此模塊。
把發(fā)展路線提煉出來之后,要做是「優(yōu)化舊系統(tǒng)」,如:第二個階段你看到對標(biāo)的人用三年經(jīng)歷從經(jīng)理做到總監(jiān),那在此方面自己有沒有更快的辦法呢?
所以不局限在表面的細(xì)枝末節(jié),挖掘背后隱藏的路徑和機(jī)制才是根本,真正的工程思維是要「解構(gòu)舊系統(tǒng)」,組合創(chuàng)新「新系統(tǒng)」。
總結(jié)一下
使命的驅(qū)動、頂層的框架設(shè)計(jì)、組塊化的SOP。
這種全局觀加上約束內(nèi)的反饋機(jī)制,才是普通人值得學(xué)習(xí)的工程師思維。
回到文章開始,為什么學(xué)過很多道理,依然過不好一生?
因?yàn)椤改莻€道理」背后的系統(tǒng)你沒有躬身入局,所以聽了也沒用,想想看不是嗎?
#專欄作家#
王智遠(yuǎn),公眾號:王智遠(yuǎn),暢銷書《復(fù)利思維》作者,人人都是產(chǎn)品經(jīng)理專欄作家?;ヂ?lián)網(wǎng)學(xué)者,左手科技互聯(lián)網(wǎng),右手個體認(rèn)知成長。
本文原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自 Unsplash,基于CC0協(xié)議
- 目前還沒評論,等你發(fā)揮!