网络工程师和软件工程师的知识结构还是有明显区别的,具体的工作内容也有较大的区别,下面做一个对比描述。
网络工程师有两个大的方向,一个方向是网络应用工程师,常见的工作任务包括网络拓扑设计、路由器和交换机配置、网络服务器管理等内容,另一个方向是网络研发工程师,这部分工程师主要的工作是网络产品的研发,包括各种网关设备的研发,包括防火墙等设备。对于刚毕业的大学生来说,从事网络应用工程师的可能性比较大。对于网络应用工程师来说,需要掌握的知识结构包括网络体系结构、协议、交换机配置、路由器配置、服务器配置、防火墙配置、存储配置等内容,另外还需要了解综合布线的相关内容。
软件工程师也有两个大的方向,一个是研发级工程师,另一个是应用级工程师,也就是常说的研发级程序员和应用级程序员。研发级程序员的工作往往要求有扎实的基础知识(高数、线代、概率论、离散数学),因为研发级工程师的工作是不断突破知识边界,研发出新的产品。应用级程序员的工作往往是完成功能模块的开发,应用级程序员对基础知识的要求并不高,大部分大学毕业生都是从应用级程序员岗位开始做起(研究生往往从研发级岗位开始做起)。
应用级程序员最重要的知识结构包括编程语言(Java、Python、PHP、JavaScript等)和数据库(MySql、Oracle、SQL Server等),当然也需要掌握基本的操作系统知识和计算机网络知识,对于研发级程序员来说要有扎实的数学基础,掌握算法设计和数据结构知识,而应用级程序员对基础知识的要求并没有那么高。看一个Python的小例子:
通过以上分析,网络工程师主要以操作网络设备为主,难度不高但是需要较强的动手能力,需要学习大量的命令。软件工程师则需要有扎实的编程语言基础,软件工程师的上升空间还是比较大的。
我的主要研究方向是大数据和人工智能,目前也在指导相关方向的研究生,对大数据感兴趣的朋友可以关注我。
如果有大数据、人工智能方面的问题,都可以咨询我,谢谢!
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有