物联网(IoT)行业正蓬勃发展,成功的物联网项目需要大量工程,本文讨论了完整物联网项目所需的开发人员技能:包括嵌入式开发技术,应用程序编程,大数据分析等等。
硬件设计师
大多数物联网项目包括某种形式的定制硬件设计。硬件的复杂程度在不同的项目之间差异很大。在某些情况下,可以使用硬件模块和参考设计,对于这些,基础电气工程教育就足够了。更复杂的项目需要更多的经验和专业知识。
无线通信专家
大多数物联网项目都是无线的,无线很难实现,因为它结合了物理世界的所有困难和软件的复杂性。无线通信专家的典型背景是无线通信、网络协议和软件开发。对于大规模物联网系统,需要具备无线通信专业知识,以适当调整网络和通信模式。对于消费级物联网系统,需要具备无线通信专业知识,才能使设备通过蓝牙顺利连接到用户的智能手机。
嵌入式固件开发人员
要将硬件变为魔术,你需要嵌入式开发人员。典型的背景是电气工程、计算机体系结构和软件开发的结合,嵌入式开发人员使用最终硬件的原型版本。
典型技能:C,汇编语言,C++
实时操作系统(RTOS)体验:FreeRTOS、Contiki、Zephyr
嵌入式linux
源代码版本控制
物理和信息安全
平台:Texas Instruments、ARM Cortex、AVR、微芯片、Arduino、Raspberry Pi
前端和后端开发人员
大多数物联网项目都有一个以网页形式出现的前端,和以存储数据库、应用程序逻辑的后端。前端是与用户交互的地方,需要懂html,css,JAVAscrip,熟练使用Vue.js、Reaction、Bootstrap等框架。后端开发人员需要精通java、JavaScript,Go,Python/ target=_blank class=infotextkey>Python,Ruby等语言,了解MySQL、MongoDB、redis等数据库工具。
应用程序开发人员
许多面向用户的物联网项目使用移动应用程序作为用户界面。随着项目的进展,移动应用体验变得越来越重要。这通常意味着需要开发和维护两个版本的应用程序:IOS和Android。有时,混合本机应用程序(通常使用HTML开发)是一种解决方法。大多数应用程序开发人员精通本机或混合框架的优点和挑战。
系统集成、自动化和工程师
许多物联网项目需要与现有软件集成。软件集成是一项经常被低估的任务,需要付出巨大的努力和一套特定的技能才能成功。一旦软件集成开始,你将希望确保集成继续工作。这就是自动化测试发挥作用的地方。系统集成和自动化工程师将具有丰富的实践经验和勇气,因为这是一项艰巨的工作。
数据科学家
物联网项目围绕数据展开,你需要理解这些数据。在项目的早期阶段,这可能很简单,只需将关键绩效指标放入Excel表格中进行比较,但随着项目的进展,你可能需要对数据进行更深入的分析。这就是数据科学家的用武之地。数据科学家利用复杂的数据来发现模式和可操作的信息,从而最终驱动数据的价值。