工程師方向選擇指南:嵌入式、邊緣計算與物聯(lián)網(wǎng)平臺崗位解析)
AIoT這個詞這兩年出現(xiàn)的頻率越來越高但很多人對它的理解還停留在AI加IoT的字面拼接上。實際去招聘網(wǎng)站翻一圈就會發(fā)現(xiàn)掛著AIoT名頭的崗位五花八門從寫驅動的到做算法的從畫板子的到搭平臺的薪資跨度能從十幾K到五六十K。這就帶來一個很現(xiàn)實的問題同樣是AIoT開發(fā)工程師這個身份你到底該往哪個方向深耕不同崗位每天在干什么、需要什么硬技能、天花板在哪里這些信息在招聘JD里往往寫得含糊其辭。我結合自己這幾年在嵌入式、邊緣計算和物聯(lián)網(wǎng)平臺之間來回折騰的經(jīng)歷把AIoT這條鏈路上真實存在的崗位拆開講一遍順便說說每個方向的門檻和坑希望能幫到正在選方向或者準備跳槽的朋友。1. 先搞清楚AIoT這條鏈路到底分幾層在聊具體崗位之前得先把AIoT的技術棧理清楚不然你根本不知道自己站在哪一層。我習慣把它分成四層來看感知層、邊緣層、網(wǎng)絡層、平臺與應用層。這個分法不是學術定義而是從實際項目分工和招聘需求反推出來的更貼近真實工作場景。感知層就是各種傳感器、執(zhí)行器、攝像頭、網(wǎng)關硬件本身。這一層的人天天和電路、通信協(xié)議、低功耗打交道。邊緣層是這兩年被提得最多的簡單說就是在離設備近的地方做計算而不是把所有數(shù)據(jù)都甩到云端。網(wǎng)絡層負責把數(shù)據(jù)從A點搬到B點涉及各種有線和無線通信方式。平臺與應用層則是數(shù)據(jù)匯聚、存儲、分析、可視化以及最終面向業(yè)務的應用開發(fā)。為什么這個分層重要因為每一層對應的崗位技能樹差異極大而且薪資結構、職業(yè)天花板、被替代的風險都不一樣。我見過不少新人一上來就說要做AIoT全棧結果學了一堆東西每樣都不精面試時被問深一點就露餡。正確的做法是先錨定一層作為主戰(zhàn)場再向相鄰層做有限擴展。下面這張表是我根據(jù)實際招聘情況和項目經(jīng)驗整理的能幫你快速定位層級典型崗位核心技術棧薪資區(qū)間一線城市3-5年經(jīng)驗感知層嵌入式開發(fā)工程師、硬件工程師C、RTOS、STM32、電路設計15K-30K邊緣層邊緣計算工程師、嵌入式AI工程師Linux、Python、模型部署、異構計算25K-45K網(wǎng)絡層物聯(lián)網(wǎng)通信工程師協(xié)議棧、組網(wǎng)、網(wǎng)關開發(fā)18K-35K平臺層物聯(lián)網(wǎng)平臺開發(fā)、AIoT解決方案工程師云原生、微服務、時序數(shù)據(jù)庫25K-50K需要說明的是這個劃分是最可能的典型情況實際中很多崗位是跨層的尤其是中小公司一個人往往要兼顧邊緣和平臺。但作為職業(yè)規(guī)劃的參考框架先分清層次再選方向比盲目投簡歷要靠譜得多。2. 嵌入式方向AIoT最扎實的基本盤嵌入式是AIoT的根這一點短期內(nèi)不會變。不管上層算法多花哨最終都要落到一塊具體的板子上跑起來。這個方向的崗位數(shù)量最多入門門檻相對明確但天花板也取決于你往哪個細分走。2.1 裸機與RTOS開發(fā)入門友好但別停在這大部分人的嵌入式起點是STM32這類MCU跑裸機程序或者FreeRTOS。典型工作內(nèi)容包括按鍵掃描、串口通信、傳感器數(shù)據(jù)采集、簡單的控制邏輯。這個階段的核心技能是C語言、寄存器操作、中斷處理、通信協(xié)議UART/I2C/SPI。我剛開始做物聯(lián)網(wǎng)網(wǎng)關項目時就是用STM32加FreeRTOS做的。當時踩過一個很典型的坑按鍵掃描用了阻塞式延時結果整個系統(tǒng)在按鍵處理期間其他任務全卡住。后來改成非阻塞的狀態(tài)機掃描配合定時器輪詢才把實時性救回來。這個經(jīng)歷讓我明白一個道理——RTOS下任何阻塞操作都是定時炸彈尤其是延時函數(shù)能不用就不用。這個方向的崗位需求量大但純裸機開發(fā)的薪資增長很快會遇到瓶頸。我的建議是把RTOS用熟之后盡快往Linux方向遷移。原因很簡單復雜AIoT設備網(wǎng)關、邊緣盒子、智能攝像頭基本都是跑Linux的純MCU能承載的業(yè)務復雜度有限。2.2 嵌入式LinuxAIoT設備的主流操作系統(tǒng)嵌入式Linux是AIoT開發(fā)里含金量最高的基礎技能之一。你去看那些做智能網(wǎng)關、邊緣計算盒子的崗位JD里幾乎必然出現(xiàn)熟悉嵌入式Linux這一條。這個方向要掌握的東西比裸機多得多系統(tǒng)移植uboot、kernel裁剪、設備樹配置、根文件系統(tǒng)制作驅動開發(fā)字符設備、平臺設備、I2C/SPI/USB驅動系統(tǒng)調試常用命令、日志分析、性能排查構建系統(tǒng)Buildroot、Yocto的使用根文件系統(tǒng)的掛載方式是個高頻考點也是實際項目里容易出問題的地方。NFS掛載在開發(fā)階段特別方便主機上改完文件目標板直接生效不用反復燒錄。但NFS版本要匹配我遇到過用NFS v3掛載失敗、換成v4才成功的情況反過來也有。生產(chǎn)環(huán)境一般用本地存儲或者只讀文件系統(tǒng)避免掉電損壞。提示嵌入式Linux學習曲線陡峭別指望看幾篇文章就會。最有效的方式是找一塊開發(fā)板從點亮LED開始一步步把系統(tǒng)跑起來每個環(huán)節(jié)都親手做一遍。這個方向的崗位薪資普遍比純MCU高一個檔次而且經(jīng)驗越老越吃香因為系統(tǒng)級的調試能力很難被速成替代。2.3 嵌入式AI把模型塞進資源受限的設備這是這兩年最熱的方向之一。核心工作是把訓練好的AI模型部署到嵌入式設備上讓設備具備本地推理能力。為什么要在本地推理而不是全傳云端原因很直接延遲、帶寬、隱私。工業(yè)場景里幾十毫秒的延遲要求數(shù)據(jù)全傳云端根本來不及攝像頭視頻流全上傳帶寬成本扛不住涉及隱私的數(shù)據(jù)也不適合出設備。這個崗位需要的能力比較復合懂模型知道常見網(wǎng)絡結構會做量化和剪枝懂框架TensorFlow Lite、ONNX Runtime、NCNN等推理框架懂硬件了解NPU、GPU、DSP的加速原理懂工程C部署、內(nèi)存管理、性能優(yōu)化我做過一個邊緣AI測試項目把一個人臉檢測模型部署到帶NPU的開發(fā)板上。原模型在PC上跑得好好的移植過去幀率只有個位數(shù)。排查后發(fā)現(xiàn)兩個問題一是輸入分辨率沒降二是沒用上NPU加速。把輸入從1080P降到640P再切換到NPU推理幀率直接翻了十幾倍。這個經(jīng)驗說明邊緣AI部署的核心不是模型本身而是工程優(yōu)化。3. 邊緣計算方向AIoT里最值錢的中間層邊緣計算是AIoT架構里承上啟下的關鍵層也是目前薪資溢價最明顯的方向之一。它的核心價值在于把計算能力下沉到離數(shù)據(jù)源近的地方既降低了對云端的依賴又提升了響應速度。3.1 邊緣計算工程師到底在做什么很多人以為邊緣計算就是在邊緣跑AI其實遠不止。邊緣計算工程師的日常工作包括邊緣節(jié)點軟件架構設計決定哪些任務在邊緣做、哪些上云邊緣平臺搭建部署和管理邊緣計算框架數(shù)據(jù)流處理邊緣側的數(shù)據(jù)過濾、聚合、緩存設備管理邊緣節(jié)點的遠程配置、升級、監(jiān)控云邊協(xié)同邊緣和云端的數(shù)據(jù)同步、任務調度開源邊緣計算平臺是繞不開的話題。KubeEdge、EdgeX Foundry、EMQX這些在工業(yè)項目里用得很多。選型時要考慮的因素包括社區(qū)活躍度、部署復雜度、和你現(xiàn)有技術棧的契合度。我個人的經(jīng)驗是別一上來就上重型框架小項目用輕量方案反而更穩(wěn)等業(yè)務復雜了再遷移。3.2 邊緣智能AI模型該放云端還是邊緣這是個經(jīng)常被討論的問題。摘要里提到邊緣智能是將AI模型不屬于云端服務器所有計算都在云端完成延遲較高這句話點出了核心矛盾。我的判斷標準是這樣的場景特征推薦部署位置理由延遲敏感100ms邊緣云端往返延遲不可控數(shù)據(jù)量大視頻流邊緣帶寬成本高隱私敏感邊緣數(shù)據(jù)不出設備模型超大、更新頻繁云端邊緣算力和存儲有限多設備協(xié)同決策云端需要全局視圖實際項目里往往是混合部署邊緣做實時推理和初步過濾云端做模型訓練和全局分析。這種云邊協(xié)同的架構是當前AIoT項目的主流做法。3.3 工業(yè)互聯(lián)網(wǎng)邊緣計算的實際落地工業(yè)場景是邊緣計算落地最扎實的地方。實訓箱、產(chǎn)線監(jiān)控、設備預測性維護這些場景對實時性和可靠性要求極高。我參與過一個設備狀態(tài)監(jiān)控項目傳感器數(shù)據(jù)在邊緣側做實時異常檢測只有異常片段才上傳云端。這樣既保證了響應速度又把云端存儲成本降了一個數(shù)量級。這個方向對從業(yè)者的要求是既懂OT又懂IT。OT是工業(yè)現(xiàn)場的協(xié)議和邏輯IT是軟件開發(fā)和數(shù)據(jù)處理。兩邊都懂的人非常稀缺這也是為什么工業(yè)邊緣計算崗位薪資普遍偏高。4. 物聯(lián)網(wǎng)平臺與網(wǎng)絡方向連接與數(shù)據(jù)的生意設備和邊緣都搞定了數(shù)據(jù)總得有個地方匯聚和管理這就是平臺層和網(wǎng)絡層的機會。4.1 物聯(lián)網(wǎng)平臺開發(fā)從設備接入到數(shù)據(jù)可視化物聯(lián)網(wǎng)平臺開發(fā)的核心是設備接入、數(shù)據(jù)存儲、規(guī)則引擎、應用使能。國內(nèi)有不少開源和商業(yè)平臺ThingLinks這類平臺在中小項目里用得挺多。這個崗位需要的技能偏向后端和云原生后端語言Java、Go、Python都有微服務架構Spring Cloud、Dubbo消息中間件MQTT Broker、Kafka時序數(shù)據(jù)庫InfluxDB、TDengine容器化Docker、Kubernetes設備接入?yún)f(xié)議里MQTT是絕對主流因為它輕量、支持發(fā)布訂閱、適合弱網(wǎng)環(huán)境。但MQTT Broker的選型和調優(yōu)是個技術活連接數(shù)上萬之后各種問題都會冒出來。4.2 物聯(lián)網(wǎng)網(wǎng)關與網(wǎng)絡連接那些容易被忽略的細節(jié)網(wǎng)關是連接感知層和上層網(wǎng)絡的樞紐。做網(wǎng)關開發(fā)要處理協(xié)議轉換、數(shù)據(jù)緩存、斷網(wǎng)續(xù)傳、遠程升級等問題。熱詞里提到的物聯(lián)網(wǎng)網(wǎng)關與傳感器的IP關系其實是個很實際的問題——網(wǎng)關通常要做NAT或者路由傳感器在內(nèi)部子網(wǎng)網(wǎng)關對外提供統(tǒng)一出口。網(wǎng)絡連接方面交換機和路由器的配置是基本功。工業(yè)現(xiàn)場的網(wǎng)絡環(huán)境往往比辦公室復雜得多電磁干擾、線路老化、IP沖突都是家常便飯。我遇到過網(wǎng)關頻繁掉線最后查出來是網(wǎng)線接頭氧化導致接觸不良這種問題靠軟件排查永遠找不到。4.3 無源物聯(lián)網(wǎng)一個值得關注的新方向無源物聯(lián)網(wǎng)是最近比較新的概念核心思路是設備不帶電池從環(huán)境中獲取能量射頻、光、振動等來工作。它的應用場景主要是那些換電池成本極高的地方比如埋在墻里的傳感器、大規(guī)模部署的標簽。這個方向目前還偏研究和早期落地但潛力不小。對從業(yè)者的要求偏向硬件和射頻和傳統(tǒng)嵌入式開發(fā)有交集但不完全一樣。如果你對低功耗和能量收集感興趣可以提前關注。5. 不同背景的人該怎么選方向說了這么多崗位最后落到最實際的問題你該怎么選我按幾種常見背景給點具體建議。如果你是電子、自動化相關專業(yè)應屆生從嵌入式MCU入手最穩(wěn)妥先把C語言、RTOS、通信協(xié)議打扎實。工作一兩年后往嵌入式Linux遷移這是性價比最高的路徑。如果你是計算機專業(yè)想做AIoT別去卷裸機開發(fā)直接走平臺層或邊緣計算。你的編程基礎和后端經(jīng)驗在這里更值錢補一下Linux系統(tǒng)和網(wǎng)絡知識就夠了。如果你已經(jīng)在做純軟件開發(fā)想轉AIoT邊緣計算和物聯(lián)網(wǎng)平臺是最平滑的切入點因為這兩個方向本質還是軟件開發(fā)只是運行環(huán)境和業(yè)務場景變了。如果你在做運維想轉Linux運維的經(jīng)驗在嵌入式Linux和邊緣計算方向都能復用補一下C語言和設備側知識即可。關于學習路線我的核心建議是以項目驅動學習。別抱著教程從頭看到尾找一個具體的項目比如做一個物聯(lián)網(wǎng)網(wǎng)關、部署一個邊緣AI應用在做的過程中遇到什么學什么。這樣學到的知識是帶場景的記得牢也用得上。面試準備方面嵌入式方向的高頻考點包括內(nèi)存管理、中斷機制、通信協(xié)議時序、RTOS調度原理。Linux方向會問啟動流程、驅動模型、常用調試命令、性能優(yōu)化。邊緣計算方向則側重架構設計、云邊協(xié)同、容器化部署。這些都需要結合實際項目經(jīng)驗來回答光背八股文很容易被追問穿。這個領域變化很快新概念層出不窮但底層的東西——操作系統(tǒng)、網(wǎng)絡、編程能力——是相對穩(wěn)定的。把基本功練扎實再跟著具體項目去接觸新技術比追熱點要靠譜得多。我自己這幾年從MCU做到Linux再到邊緣計算每一步都是被具體項目推著走的回頭看反而是最扎實的成長路徑。