為什麼搞嵌入式的要轉互聯網,搞互聯網的想轉嵌入式?如何解釋?
謝邀,這是一個看第一眼就讓我熱血沸騰的話題。
我想了很多種原因,卻不知道文章該如何開頭。
想起錢鍾書的《圍城》:城外的人想進去,城裡的人想出來。
=============================================================
個人篇
知乎上的大神太多,老工程師也很多,他們對電子(或嵌入式)這個行業有更深的體會。
比如yichun jiang在《為什麼在中國電子工程師的發展明顯不如軟體工程師方向?》(以下簡稱《為》)問題的最後回答:「一個好的硬體工程師,要燒掉公司至少10w 元,這十萬不是你的工資,而是給公司實驗,損壞的成本。你的一句話為了理想,看起來很委屈,實際上企業也陪你燒錢,最悲催的是互聯網行業做硬體公司,沒有一個按互聯網行業發工資,多麼可笑,只能傻笑。」
另外他還寫道,08年是一個分水嶺。08年前,缺書;08年後,書貴;而現在,資料灑滿互聯網。
11年以前嵌入式還沒有那麼火,做單片機/嵌入式開發更多的都是硬體出身的。我相信不少11年以前大學畢業的電子工程師非常想去做軟體,比如這個2011年8月提出來的問題:電子工程師想轉行互聯網行業,能轉么?具體從哪裡開始?此問題題主是在家電行業做了4年開發的工程師,會做小家電類的硬體和單片機編程,想去互聯網行業。
職業篇
在《為》這個問題里,最高票的時光行者也寫了很多,我稍微提煉一下:
時光行者提到了三個領域:消費電子領域和工控、高端醫療器械領域。其中消費電子領域IC廠家會給出各種晶元解決方案,下游企業的工程師只要根據解決方案設計好電路即可,幾乎不需要做太多的改動,發揮餘地小。於是做出來的產品差別就要體現在軟體上,軟體舞台大,工程師發揮餘地大,自然被企業更加重視了。另外一點,作者還發現大家用手機玩一兩年就扔了,根本不需要設計那麼精細,以至於硬體工程師技術再高也沒用。
由此可知,消費電子領域裡硬體工程師發揮餘地小,待遇不如軟體工程師。而後者(工控、醫療領域)硬體的處境就好很多,但也對技術要求很高。時光行者寫道:「在這種複雜度下(硬體可靠性系統),硬體工程師的受重視程度和待遇跟軟體相當,我也跟德國人求證過,在德國軟硬體待遇也處於同一水平。」所以說,在德國,某些領域軟硬體工程師待遇一樣的。
當然答主我本身就從沒接觸過工控等大型設備領域,國內外的真實情況我是不知道的,不多寫,有興趣可以看原答案。
公司篇
引用《為》里的James Zhu的一句話:「軟體公司的主要成本就是人,而硬體公司還要採購很多昂貴的設備,所以在相同利潤率的情況下,成本固定,軟體公司把錢都給了員工,而硬體公司還要買設備。」
互聯網公司只要一台伺服器、幾台電腦、幾個程序員就可以工作了。而做硬體的,沒有萬用表示波器邏輯分析儀各種測試設備怎麼留住硬體工程師?
行業篇
paradisor在《各行各業的情況就不一樣,為什麼曾經輝煌過的製造業要對8000塊錢的offer反應那麼大?》問題下回答:「IT行業有以下兩個特點註定會讓這個行業的從業者收入豐厚:一是IT行業產品的主要成本是人力成本;二是IT行業產品的邊際成本極低。」
是的,當年我把我的畢業設計之安卓手機藍牙控制LED燈給我媽看,我媽第一句就問:「這是屬於製造業吧?」所以只要是做嵌入式的,就絕對和製造業生產商分不開。而這產品開發出來後還要經過性能測試,安全認證,小批量生產和測試,大批量生產,運輸,找倉庫存儲,宣傳營銷,找代理商等等。
而互聯網行業,只要有一台伺服器、幾台電腦、幾個程序員就可以開工賺錢,一份代碼就可以給全世界使用,最後甚至改變世界,例如當年Google的創立和最近的Uber。軟體根本不存在量產,運輸,分銷等傳統行業才有的環節。
哦,對了,前面有人說智能硬體,VR,無人駕駛汽車什麼的,那些新聞我出這麼幾個名詞,資本,創新,變革,時代發展。沒有讀出「轉行」這個詞。
小結
對個人來說,做硬體學習資源少,學習付出成本和工資收穫不成比例,做了幾年甚至十幾年才有資格出師;軟體學習成本低,回報高。而且在消費電子領域,硬體沒有軟體的吃香。
從公司角度來看,對硬體公司來說,需要購買各種測試設備,工具,元器件等,一部分錢都花到這上面了;互聯網公司則不需要,初期購買好伺服器,電腦,招幾個程序員後就可以開工,賺來的錢都發工資留住人才好了。
從行業角度來看,做硬體的還需要上下游企業的支撐:IC廠家--&>模塊生產商/解決方案商--&>工廠生成--&>分銷商,等等,形成一個很長的產業鏈;而互聯網公司做出來的軟體直接面向廣大消費者!
以上,大概就是為什麼做硬體的人想轉互聯網了。
=============================================================
那麼,題主問:「為什麼搞互聯網的想轉嵌入式?」
我想問問題主,是說搞互聯網的人想轉嵌入式,還是說某些互聯網公司搞硬體?後者我就舉小米這個例子。
在普通消費者眼中,小米是一家出售手機的公司。小米創始人雷軍卻解釋,小米其實是一家互聯網公司。也是,小米一開始出售手機的時候沒有通過線下店鋪代理,而是採用了線上預約搶購的方式,然後再通過快遞,直接從手機廠家給搶到手機的消費者發貨,省去了中間倉庫存儲、運輸到手機店鋪等多個線下環節。這過程我可能描述有點不準確,但這卻體現了小米本質上就是一家互聯網公司而非傳統手機設計商。
我覺得題主的疑惑是前者,這裡有多方面原因。有些程序員不但想轉嵌入式,有的還不想寫代碼了呢。例如我依稀還記得有程序員辭職後去賣水果的新聞:不做 IT 果然青春煥發。
還有些是實在做不下去的,比如這位答主:在國內從事 C/C++ 編譯器的開發有發展前景嗎? - Zenzen 的回答。不過這位答主從事的是編譯器開發,雖然也是軟體,但和互聯網沾不上邊。從事軟體的不一定都是做互聯網的。這位答主最後的結局是,「轉行去製造加工業了」。
在我的大學時代(11~15年)有這麼一個觀點:「畢業後做軟體起薪比做硬體的高,但是做軟體不能做一輩子,是一個吃青春飯的職業,而硬體卻是越老越吃香的職業。」
做軟體的可能到了30歲就干不動了,而做硬體的到了30歲可能才剛剛出師。
在《30 歲才開始學習編程靠譜嗎?》這個問題中,Anstinus的回答就比較切合我上面的意思:「IT行業一開始做的都是「體力活」,這些事1、2年經驗的程序員跟10、20年經驗的程序員都能做。拼的不是技術而是速度。過了30歲精力下降,當然拼不過天天加班還能活蹦亂跳的年輕人了。所以大都選擇往管理職業上轉。」
另外在問題《「程序員干到三十就干不動了」的說法是從哪來的?》下,最高票答主invalid s提到了一個原因:分工,並由此引出來的公司管理問題。這裡只引用結論,如有更多興趣可以查看原文。還有一點大家不要忽略了,中國是1994年才接入互聯網的,現在是2016年,也就是說,互聯網在中國存在了大約22年。當年的「三十歲就干不動了」的觀點,到如今說四十歲就干不動,五十歲就干不動……
對了,搞互聯網的可不止只有程序員,自媒體,段子手,網路推手(水軍),網路直播等這些都是在互聯網上生存的,他們不可能從事技術,更不可能轉嵌入式。
當然我知道題主指的還是程序員。
技術篇
那是不是有在互聯網行業工作的程序員想轉入嵌入式行業呢?我覺得不太可能有。很多程序員並不是想轉,而是利用業餘時間玩自己喜歡的東西,也就是對嵌入式/單片機開發有一種興趣。
也有的,因為現在大趨勢是物聯網的趨勢,希望自己多學習點知識,不是有人說,一般工作不是做軟體就是做硬體,軟硬體都會的人那可是大神級別了啊。所以有的人就努力學習,努力成為軟硬體都精通的大神。
對於嵌入式這個領域,我真不知道應該把它歸為計算機領域還是電子領域,嵌入式開發就好像中間的河流,左岸是電子硬體領域,右岸是計算機編程。最典型的就是ARM+Linux開發。從計算機領域角度看,不就是在Linux系統上面寫代碼嘛?Linux本來就是搭建伺服器用的,只要是Linux玩得溜的人,在樹莓派上搭建伺服器簡直是分分鐘的事。
這裡可能有人會說ARM+Linux嵌入式開發不等於樹莓派,是的,ARM+Linux這個組合在技術層面上可以分為四層,硬體層、驅動層、系統層、應用層。如果僅僅是在系統層和應用層這兩塊里寫代碼,和在其他環境下寫代碼似乎沒有什麼差別,因為底層都已經封裝好了。而硬體層和驅動層一般是由廠家的硬體/驅動工程師負責。
而且,有一種神奇的概念叫介面(API),有一種方便的東西叫庫,互聯網的程序員每天都有一份工作就是查看技術文檔,調用各種介面,然後編寫自己的業務代碼。那麼在嵌入式環境下也一樣了,查看技術文檔,調用底層庫提供的介面,然後就可以控制晶元引腳的高低了。
我還忘了提一樣偉大的技術——模塊化。程序可以有模塊化開發,硬體也有模塊,各種電源模塊啊溫度感測器模塊啊紅外模塊啊,只要用杜邦線連到開發板上,再下載廠家提供的常式,功能實現簡直是一瞬間的事情。
軟硬體模塊,函數庫,程序介面,這三樣做好了,純軟體程序員玩硬體幾乎不是什麼難事,這裡舉個例子:Arduino。當然了,想要實現自己想要的效果,還是需要一定的電子基礎的。
另外,從技術的角度看,除了用C控制硬體,用Java、Python、Lua甚至js控制硬體也是可以的。比如安卓手機開發中調用攝像頭拍照。
所以,對於純軟體的程序員來說,玩硬體更多的是興趣和學習,真正想轉去製造業的應該不會太多,要轉,也會選擇去物聯網公司。
================================================================
以上內容一己之見,僅當拋磚引玉,如有不準確的地方,歡迎大神在評論區拍磚。
第一更:
醉了,一開頭就寫錯《圍城》的作者,看來以後要裝文藝必須先查查資料啊!第二更:稍微修改了一下「職業篇」里「在德國軟硬體工程師待遇一樣的(某領域)」觀點的表述方式。都是慣的
在我的視角裡面,嵌入式軟體工程師實際上是越來越不吃香了。原因,大概就是入門門檻在降低,無需很專業的技能即可入門。
幾個例子:
IDE篇:
1999:ARM早期的IDE是SDT:
在這個環境中,你必須深刻了解使用晶元的memory map,熟悉上電流程,自寫bootloader,linker要精熟,棧得自定……然後,你自己戰戰兢兢的調通uart,然後期待著你的串口115200裡面吐出一串hello world。完成這些,你大概需要花費1周。期間打擊無數,幾乎認慫。
2003:ARM比較早期的IDE 是ADS1.2
在這個環境裡面,你感覺輕鬆了點。bootloader很多著名晶元已經OK。幾個小小驅動還難不住你。堆,自己界定下即可不需要關心memory map,上電也不用太操心,不是奇葩晶元,總是可以jump到你的export函數內的。小有波折,你的串口吐出了hello world。完成這些,大概需要3天時間。打擊有點有限。你覺得你入門了。
Now:ARM現在的MDK:
選擇晶元,導入配置和bootloader,coding 約1分鐘,F7 build,F5……hello world……硬體篇:
2001年,用過大概15公斤,體積類似印表機,售價16000美刀的」模擬器「。break point只能設置1個。玻璃機房內……
2004年,MultiICE售價1700美金。一個上市公司就買了3套,相互借著用。
。
。。Now , 」Jlink又壞了,頭……」 「上次不是讓你買10個備用嗎?壞完了,再去買10個!」
當然,我輩對移動互聯網的態度依舊是:
1999年:一堆寫網頁的……
2003年:一堆寫網頁的……now:一堆寫網頁的……
:)早期的互聯網真的是誰都可以搞。剛有網易和 OICQ 的時代,兩者從業人員基本沒有什麼門檻。就說互聯網協議和模型,網路工程師、硬體工程師、互聯網、嵌入式工程師,頭擠頭地一起看。
後來互聯網升級到移動互聯網時代,其實就是踩著嵌入式行業的肩膀爬上去的。我親手調教過 Win CE、嵌入式 Linux 和 TI DSP 的 DSP/BIOS,甚至 Symbian。然後,沒幾年,蘋果的 iOS 和 Google 在嵌入式 Linux 上構建的 Android 一出現,整個移動互聯網行業瞬間騰空而起。整個移動互聯網的底層,其實就是嵌入式啊。只不過由於社會發展的情勢,使得光芒都被移動互聯網吸引過去了。這年頭智能硬體、物聯網、VR等,那你說它們是互聯網,還是嵌入式?還是both?
就算是轉入純嵌入式,這互聯網和嵌入式也不是一個維度吧?在一個小網站寫代碼是互聯網,去Intel寫代碼是嵌入式,難道前者就一定強過後者?
至於興趣、愛好啥的就不提了,人各有志。做互聯網是不是工資高一點?
行業交叉是個趨勢。
傳統工業想轉型,互聯網新型企業想滲入傳統行業,這都很明顯。谷歌不就在搞無人駕駛亂入汽車行業么?=============等等…………搞互聯網的想轉嵌入式…………你確定你表達的意思不是「深入安卓底層做黑科技」?比如幹了10年嵌入式開發,回頭髮現剛入行2-3年,寫寫頁面的小朋友的工資就趕上自己了。。。比如幹了10年互聯網開發,覺得就這樣了,沒啥提高,要試試底層開發去。。。
移動互聯網帶來的革命,不僅僅是互聯網廠家,而且還包括一大堆終端廠商。
我們來看互聯網廠家與終端廠家運營之間的區別。1. 盈利目的不同 互聯網企業,擁有了一定的粉絲群體,這些群體就是潛在的客戶願意花錢買你的東西,有了這群粉絲群體(網友)才有互聯網企業。遊戲裡面的部落,直播里的瘋狂粉絲,這都是中國10幾年來帶來新的產物。 互聯網企業的目的,怎麼提升用戶量?怎麼用戶進行第二次消費購買! 終端廠家,怎麼賣出更多的終端?它很少會有直接和客戶接觸(手機行業的革命,也不是來自於瘋狂的粉絲)得粉絲得天下呀!
2.銷售方式不同
互聯網銷售方式,革命化代理銷售方式,去除中間商的利潤,直接線上銷售(小米、華為、樂視) 終端企業銷售方式,標準代理銷售方式,走行業渠道,到用戶手上售價就上去了一個有革命的地方,可以獲取大量的粉絲,互聯網企業當然得去嘗試。
一個有新的銷售方式,為什麼一家互聯企業沒什麼硬體底子,卻可以賣得那麼火!終端廠家怒而搞網路銷售(沒有幾家成功的,粉絲差不多已經5分天下,後來再進來已經有點難度了)3.說到底都是個,利 互聯網企業的銷售方式,革命了終端廠家。 終端廠家,眼饞線上銷售模式,想通過新的銷售模式或者經營手段,打開新的市場。肯定有互轉的個案,應該比例很低吧?如果互轉樣本達不到一定數量也就無法回答需要歸納原因的為什麼了。
知乎規矩不是先問是不是再來回答問題的么?真的有搞互聯網的要轉嵌入式的么?
得不到的永遠在騷動
感覺還是看個人喜好的因素吧,小夥伴們也各有偏好的。有的覺得只調代碼太枯燥,會選擇嵌入式之類的焊焊板子看看波形拿電壓表到處打打;我比較宅喜歡寫代碼就一天鼓搗些亂七八糟的東西寫點小東西娛樂自己娛樂大眾……
找到自己喜歡的點就好。
不過不得不說在當下這個時間節點互聯網還是比電子行業待遇要好啊;可是也有種說法是做模電經驗很重要啊年紀越大越吃香balabala的。可能想相互跳槽的人是基於這些?
不過總的來說兩者都可以養活自己啦,我個人傾向看興趣選吧。都想 吃著碗里的,看著鍋里的
因為合起來就是搞物聯網啊……
推薦閱讀:
※最近市面上很火爆的17、花椒、虎牙直播、periscope的直播功能,是自研還是第三方直播SDK服務?
※iPhone 4 上的瀏覽器有哪些推薦?
※你為什麼放棄 iOS/Android,轉而使用其他系統的手機?
※(移動)互聯網給設計行業(比如平面設計)帶來了什麼?