· 硬件設計師
· 嵌入式固件開發人員
· 無線通訊專家
· 后端開發人員
· 前端開發人員
· 應用程序開發人員
· 自動化和系統集成工程師
· 數據科學家
任何成功的物聯網項目的第一步都是定義業務目標并建立概念驗證系統,以估計這些目標是否可以實現。在此階段,你只需要本文列出的技能的一部分。但是,一旦一個項目如此成功以至于超出了概念驗證水平,團隊所需的廣度和深度就會增加。
通常,單個開發人員擁有幾種技能。有時,列表中的每個技能都需要自己的團隊。所需的人員數量取決于項目的復雜性和成功程度。成功通常意味著更多的工作,但是更多的收入可以用來雇用更多的人。
硬件設計師
大多數物聯網項目都包含某種形式的定制硬件設計。硬件的復雜性在項目之間有很大的不同。在某些情況下,可以使用硬件模塊和參考設計,對于這些基礎知識和電氣工程知識而言,這是足夠的。更復雜的項目需要更多的經驗和專業知識。要構建Apple級別的硬件,你需要一個Apple級別的硬件團隊和一個Apple級別的預算。
典型技能:
· 印刷電路板(PCB)設計
· 射頻和天線設計
· 時鐘,信號路由經驗
· 低功耗設計和功耗優化
· 芯片選擇:微控制器,傳感器,接口芯片
· 接口:SPI,I2C,JTAG,USB,GPIO
· 生產和零件采購
嵌入式固件開發人員
要將硬件變成魔術,你需要嵌入式開發人員。這些是從事軟件工作的人員,他們的軟件水平非常低,接近裸機硬件。該軟件被稱為固件(其中公司軟硬之間的事情)。典型背景是電氣工程,計算機體系結構和軟件開發的結合。嵌入式開發人員可以使用最終硬件的原型版本,因此他們的辦公桌看起來很凌亂。
典型技能:
· 編程語言:C,匯編語言,C ++
· 實時操作系統(RTOS)經驗:FreeRTOS,Contiki,Zephyr
· 嵌入式Linux
· 源代碼版本控制
· 物理和信息安全
· 平臺:德州儀器(TI),ARM Cortex,AVR,Microchip,Arduino,Raspberry Pi
無線通訊專家
大多數物聯網項目都是無線的,并且無線很難,因為它將物理世界的所有困難與軟件的復雜性結合在一起。無線通信專家的典型背景是無線通信,網絡協議和軟件開發。對于大型物聯網系統,必須具備無線通信專業知識才能適當地確定網絡和通信模式的尺寸。對于消費級物聯網系統,需要無線通信專業知識來使設備通過藍牙平滑地連接到用戶的智能手機。
典型技能:
· 網絡模擬
· 無線網狀網絡
· 很好地了解無線傳播
· 充分了解功耗
· 協議:TCP / IP,IPv4,IPv6,RPL,TLS,WiFi,藍牙,6lowpan,ZigBee,LoRA,MQTT,CoAP
后端開發人員
在物聯網系統中,后端是數據庫和應用程序邏輯所在的位置。后端通常部署在云主機中,并負責存儲來自IoT設備的數據,對用戶進行身份驗證以及為前端以及與其他系統集成提供API。
典型技能:
· 編程語言:JavaScript,Go,Python,Ruby
· 數據庫:MySQL,MongoDB,Redis
· DevOps經驗
· 云平臺:Amazon AWS,Heroku,Microsoft Azure
前端開發人員
大多數物聯網項目都有一個網頁形式的前端。這是系統用戶與之交互的地方。這需要用戶友好,安全,可在最常見的Web瀏覽器中工作并保持較新狀態。前端是用HTML開發的,幾乎總是使用一些用JavaScript編寫的現有前端框架。前端開發人員通常通過在屏幕上書寫大量文本來創建視覺體驗。
典型技能:
· UI / UX設計
· 具有用戶訪談和HCI的經驗
· HTML,CSS,Javascript
· Web開發框架:Vue.js,React,Bootstrap
應用程序開發人員
許多面向用戶的物聯網項目使用移動應用程序作為用戶界面。隨著項目的進行,移動應用程序體驗變得越來越重要。這通常意味著需要開發和維護該應用程序的兩個版本:iOS和Android。有時,通常使用HTML開發的混合本機應用程序就是這樣做的方法。大多數應用程序開發人員都精通本機或混合框架的優點和挑戰。
典型技能:
· Android,iOS開發
· 本機/混合框架:Phonegap / Cordova,Ionic,Angular,React,Vue
· 編程語言:Java,Swift,Objective C,JavaScript
系統集成與自動化及工程師
許多物聯網項目需要與現有軟件集成。軟件集成是一項經常被低估的任務,需要花費大量的精力和一套特定的技能才能成功。并且,一旦軟件集成開始,你將需要確保集成保持正常運行。這是自動測試起作用的地方。系統集成和自動化工程師將具有豐富的實踐經驗和勇氣,因為這是艱巨的工作。
典型技能:
· 自動化測試框架:Jenkins,Mocha,Travis
· REST API
· 編程語言:Javascript,Java,Python,Bash
數據科學家
物聯網項目圍繞數據展開,你需要充分利用這些數據。在項目的早期階段,這可能很簡單,只需將關鍵績效指標放入Excel表格中進行比較即可,但是隨著項目的進行,你可能需要對數據進行更深入的分析。這就是數據科學家的用武之地。數據科學家利用復雜的數據來尋找模式和可操作的信息,最終驅動數據的價值。
典型技能:
· 統計,人工智能,機器學習,數據挖掘
· 編程語言:Matlab,R,Python
· 工具:Excel,Google BigQuery,Hadoop,TensorFlow,Spark
結語:一個成熟的物聯網項目需要廣泛的技能才能成功。在項目的早期階段,驗證業務案例是最重要的任務,因此,你不需要上面列出的所有技能。但是,一旦建立了業務案例并且項目可以真正開始,這些技能就變得越來越重要。