顶级软件工程师需要具备的?

想成为一名顶级的软件工程师需要具备哪些知识和素质?在硬件方面是不是也要很高的造诣?... 想成为一名顶级的软件工程师需要具备哪些知识和素质?在硬件方面是不是也要很高的造诣? 展开
 我来答
鱼眼看娱乐
推荐于2016-07-21 · 知道合伙人教育行家
鱼眼看娱乐
知道合伙人教育行家
采纳数:2317 获赞数:126728
毕业于西安交通大学化工专业,有新闻双学位。教育培训工作十余年,读大量的教育类书籍,对教育工作有经验

向TA提问 私信TA
展开全部
顶级软件工程师,就是指高级软件工程师,需要以下具备的:
在目前很多国内软件企业中,如果你是“高级软件工程师”,那么从需求分析,设计,开发,测试,甚至到客户这一条龙都可能由一个人来负责。
软件开发与测试
首先,软件开发是软件工程师职责的基本组成部分,这点应该没有问题。其次,此处的软件测试可分为开发前的驱动测试,和开发过程中的白盒测试。驱动测试用于分析子系统/模块内部逻辑,用于在开发之前暴露开发过程中可能遇到的大部分问题和对子系统/模块进行更进一步的划分;白盒测试是保证在项目交接到测试团队手中时,能满足基本的项目要求,即能够进行α测试。
子系统/模块分析设计
在软件架构师做完系统设计,项目经理进行项目分工后,项目就正式进入开发环节。这时候每个软件工程师会拿到自己负责的子系统/模块,首先要做的就是进行分析设计,其次才是开发。开发前进行分析设计,便于从整体上对子系统进行把握,提前隔子系统中的变化点和问题,同时也可以对子系统进行更详细的划分,用于制定个人的工作计划,与项目经理和软件架构师进行具体的沟通。
撰写文档
在进行子系统和模块设计的同时,要撰写子系统设计说明书;在开发过程中,要记录技术要点和发现的问题,同时如有需要,要修改子系统设计说明书;在白盒测试时,要记录每个Bug。
定期主动沟通
在项目开发过程中,项目经理需要和团队中的每一个人沟通任务进度,其主要职责是从整体上把握和控制项目的进度。那么作为团队一员的高级软件工程师通常会负责项目中很重要的子系统/模块,这些子系统/模块往往能决定项目的成败。因此定期主动与项目经理沟通解决遇到问题,与架构师和专家沟通解决技术难题就显得非常重要了。另外,就对个人而言,定期主动沟通也往往表现为个人的主动积极性,对于个人长远发展非常有益。
持续学习
也许有人会觉得学习应该与职责无关,狭义看来确实如此。然而,不断学习新知识,提高个人技能,于公司而言,能提升工作效率;于个人而言,益于职业发展。因此,工作之余,不管你职位如何,持续学习就显得非常重要且必要。
带新人
这点也许不是硬性要求,但国外有高手带领新手这样一种师徒习惯,也应该学习并发扬。通常情况下新人会与高级软件工程师协同工作,因此带新人一方面,带领新人可以有重新审视自己知识的机会;另一方面能够让新人更快入手,降低学习成本和提高工作效率;同时也能保持良好的人际关系。
以上是个人对高级软件工程师职责范围的认识,也许有些比较牵强,然而就对职业发展而言,要想做好高级软件工程师,上面几条是平时工作中必须要做的。
匿名用户
2013-08-12
展开全部
1.编程开发工具.

至少熟练掌握两到三种开发工具的使用, 这是程序员的立身之本. C/C++以其高效率和高度的灵活性成为开发工具中的利器, 很多系统级的软件还是用C/C++编写. 而JAVA的跨平台和与WEB很好的结合是JAVA的优势所在. 其次, 如果能掌握一种简便的可视化开发工具, 如VB,PowerBuilder,Delphi,C++ Builder,则更好, 这些开发工具减小了开发难度, 并能够在无形中强化对象模型的概念.另外, 需要掌握基本的脚本语言, 如shell,perl等.

2.数据库.

数据库在当今的信息外包产业是很重要的. 很多应用程序都是以数据库的数据为中心, 而数据库的产品也有不少, 其中关系型数据库仍是主流形式, 所以作为高级软件工程师而言, 至少熟练掌握一两种数据库, 对关系型数据库的关键元素非常清楚, 熟练掌握SQL的基本语法是非常重要的.

3.网络协议TCP/IP.

在互联网如此普及的今天, 如果还没有对互联网的支撑协议TCP/IP协议栈有很好的掌握就很难在IT业立足. 从最早的客户/服务器结构, 到今天的WEB Services, 这一切都离不开以TCP/IP协议栈为基础的网络协议支持, 所以, 深入掌握TCP/IP协议是非常必要的.

4.软件工程与CMM.

现代大型软件系统的开发中, 工程化的开发控制成为软件系统成功的保证. 编程只是软件生命周期中的其中一环, 本人认为优秀的软件工程师应该掌握软件开发各个阶段的基本技能, 如市场分析, 可行性分析, 需求分析, 结构设计, 详细设计, 软件测试等. 否则就永远只会是一个程序员, 而无法成为名副其实的工程师.

5.计算机技术专业英语.

随着中国的信息外包产业逐步展开, IT业急需与国外相关高新技术接轨来保持在发展上不落人后. 于是IT业相关从业人员现有的英语水平成为限制中国信息产业与国外交流的瓶颈. 一个普遍的共识是:良好的英语交流和阅读能力成为衡量一个软件工程师水平的隐性标准.所以掌握计算机专业英语是很重要的.

6.强烈的好奇心和学习精神.

对于一个立志成为高级软件工程师的人, 最重要的其实是强烈的好奇心和学习精神. 没有比强烈的好奇心和学习精神更好的武器了, 它是成功的工程师乃至在各行各业的成功者们永攀高峰的源泉和动力所
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小囡囡HJ
2022-04-26 · 超过16用户采纳过TA的回答
知道答主
回答量:42
采纳率:0%
帮助的人:1.4万
展开全部
随着移动互联网的普及与发展,手机应用不断深入我们生活的方方面面,移动系统和软件应用的开发领域,成为了未来具有潜力的行业之一,合格的软件人才在任何企业都具有不可替代的竞争优势 。

选择江西新华电脑学院软件技术工程师专业,你将学习:
网络安全基础、Dreamweaver网页设计、Photoshop网页效果图制作、Window Server 2008服务、器操作系统和活动目录、C语言、SQL Server2005数据库、设计和高级查询、HTML5+CSS3、JavaScript、jQuery高级编程、动态网页设计PHP+MYSQL、Linux服务器操作系统、数据结构软件工程、JAVA面向对象程序设计、oracle数据库、J2EE服务器端高级编程、手机APP视觉设计、APP应用程序开发等。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
秒懂百科
2021-01-20 · TA获得超过5.9万个赞
知道大有可为答主
回答量:25.3万
采纳率:88%
帮助的人:1.2亿
展开全部

高级软件工程师:IT行业中的重要岗位

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
山西新华电脑学校
2020-12-04 · 初高中毕业学互联网技术来山西新华
山西新华电脑学校
山西新华电脑学校办学30多年,主要从事互联网教育。
向TA提问
展开全部
软件工程师的技术要求是比较全面的,除了最基础的编程语言(C语言/C++/JAVA等)、数据库技术(SQL/ORACLE/DB2等)等,还有zhuan诸多如JAVASCRIPT、AJAX、HIBERNATE、SPRING等前沿技术。此外,关于网络工程和软件测试的其他技术也要有所涉猎。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式