梁朝伟可爱
近几年,互联网行业发展迅速,最受人欢迎的非软件工程师莫属了,可软件工程师也有很多细分的方向,比如Web方向、大数据方向、物联网方向、云计算方向、人工智能方向、区块链方向等等,不同方向的软件工程师需要具备的知识结构也会有所区别。另外,不同行业(金融、教育、通信、医疗)的软件工程师往往在知识结构上也有所区别。今天,IT培训就和大家来聊聊!
通常情况下,软件工程师需要具备以下几个方面的知识结构:
第一:操作系统知识。操作系统知识是软件工程师必须具备的重要内容,Web开发领域可能会使用到Windows系列操作系统,大数据和物联网方向要使用到Linux系列操作系统,掌握操作系统的体系结构是进行软件研发的重要基础。主要内容包括资源管理、任务调度、并发管理、权限管理、网络管理等内容。
第二:编程语言和算法。编程语言是软件工程师必备的技能,不同方向的开发需要使用到不同的编程语言,比如Web开发可能会使用PHP、Python、Java等语言,而大数据可能会使用Java、R、Scala等语言,而物联网开发可能会使用到C、C++等编程语言。通常来说,软件工程师往往需要掌握多门编程语言,以应对不同的开发环境。算法是软件工程师的重点知识结构,因为软件研发说到底就是个数学问题,所以算法的掌握情况往往能够决定软件工程师的成长高度。当然,对于应用级软件工程师来说,也有可能不会接触到更多的算法。
第三:领域知识。不同开发领域需要掌握不同的知识结构,比如大数据软件工程师往往需要掌握Hadoop、Spark平台的使用,而Web开发工程师往往还需要掌握前后端开发技术,包括一系列Web开发框架的使用等等。
爱上家装饰
熟悉Linux操作系统,基本配置,系统管理,网络路由包过滤防火墙与各种服务程序配置;熟悉shell脚本语言,熟悉C,Python,JAVA其中一种或几种了解Linux下的RAID、LVM等机制与配置,了解Linux下的各种本地文件系统与网络文件系统,熟练进行调优配置。熟悉各种主流的开源分布式文件系统及分布式存储系统;熟悉Hadoop框架,各个相关软件模块,能够安装、配置、优化hadoop运行系统,熟悉各种hadoop变种产品及相应优缺点,对hadoop平台有自己的理解,了解OpenStack平台,能够搭建、定制OpenStack系统。拓展资料Linux重要目录结构详解
susyweswes
Linux云计算工程师应该具备以下知识:1、熟悉Linux操作系统,基本配置,系统管理,网络路由包过滤防火墙与各种服务程序配置;2、熟悉shell脚本语言,熟悉C,Python,JAVA其中一种或几种3、了解Linux下的RAID、LVM等机制与配置,了解Linux下的各种本地文件系统与网络文件系统,熟练进行调优配置。熟悉各种主流的开源分布式文件系统及分布式存储系统;4、熟悉Hadoop框架,各个相关软件模块,能够安装、配置、优化hadoop运行系统,熟悉各种hadoop变种产品及相应优缺点,对hadoop平台有自己的理解,了解OpenStack平台,能够搭建、定制OpenStack系统。
就叫小胖
windows下面的cygwin其实就是模拟Linux环境,如果条件允许的话,还是直接使用Linux吧,比如我们公司做Hadoop研究开发都是在Fedora上面进行的。其实Linux就是命令多点,对于开发人员而言。如果不是开发内核或者驱动程序的话,那么没什么难度,你想要的资料和信息网上可以找到一大堆。做hadoop开发的话,因为本身是Java开发的,所以用尽java上手还是比较快的,当然只要有标准输入输出的语言都可以开发hadoop的。此外,Shell脚本尽量多掌握些,本人不喜欢在IDE下面工作,所以有点小怪僻而已,shell掌握了也就等于掌握Linux的基础了。此外,ssh,iptables等还是最好学会如何配置或使用的。等你实践后,遇到问题再私下交流吧
优质工程师考试问答知识库