0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一名软件工程师的必备素质是什么

工程师人生 来源:工程师吴畏 2019-07-17 17:01 次阅读

朱志辉,高端JAVA 软件设计专家, 8年软件工作经验,IT专业人士。1997年加入亚信科技(中国)公司,任AIOBS计费系统产品经理。1998年加入Sun Microsys?鄄tems Inc. China Ltd.任系统工程师,负责金融和政府各种应用解决方案。参与设计建设了中国工商银行广州、深圳分行新兴业务整合和电子银行系统。现任达内科技(中国)有限公司首席技术官。他结合自己的经历,告诉我们——软件工程师成才之路。

今天,软件业已经成为人们羡慕的高薪行业。我国的软件企业达上万家,软件从业人员更是突破百万。软件业中的技术人员大都有一个明确的上升通道:编码员——程序员——高级程序员——软件工程师——项目经理——系统架构分析师。软件工程师是通道最关键的一环。

一个软件工程师的必备素质是什么呢?朱志辉认为:

一、具有良好的编程能力。编程能力直接决定了项目开发的效率。软件工程师至少精通一门编程语言,熟悉基本语法、技术特点和API(应用程序接口);二、具备认识和运用数据库的能力。信息以数据为中心,与数据库的交互是必不可少的;三、较强的英语阅读和写作能力;四、具有软件工程的概念。从项目需求分析开始到安装调试完毕,软件工程师必须清楚地理解和把握这些过程,并能胜任各种环节的具体工作。

对于想要成为软件工程师的从业者,朱志辉作了具体指导:

选择什么编程语言

编程语言那么多,一个人不可能学完所有,那么究竟该学哪些?朱志辉说,选择所学语言的关键在于两点:一是通用性,二是适用性。通用性是指该语言的使用范围较大,是完成工作的基础性工具。而且,通用性语言一般是编程人员都会的,拓展性很强,能够为学习其他语言奠定基础。c++、java等都属于通用性语言。“c++的通用性最好。”朱志辉解释说,“初学语言的人一定得学好c++,打好基础。”适用性是指该语言的大面积使用受到一定限制,其应用多偏向于某个方面,如汇编语言、html语言等。每个人对自己的定位不同,有些人想进行底层开发,有些人想做网站开发,有些人想做商业软件开发等等,最初选择语言时就应该考虑这些定位,选择比较适用的语言。

如何学习编程语言

“读程序、写程序是快速学习、掌握语言的不二法门。”朱志辉说。读程序要求熟悉一种语言的基本语法,这样能读懂别人程序的每一行意思,反过来加深对语法的理解。读程序也不能单纯地读,要真正做到“俯而读,仰而思”。这样就能发现别人的程序设计思想,为自己写程序打下基础。

学习语言的目的关键在于应用,因此,写程序是最终掌握语言的关键。写程序一定要依据自身能力循序渐进地写,开始的时候写一点功能简单的、篇幅短小的代码,力求简洁、完整,“麻雀虽小,但五脏俱全”,然后在此基础上进行扩充,一点一点添加功能,逐渐进入应用。比如,当你需要练习一种语言基于数据库的应用时,首要任务就是编写一定的程序,使数据完善地保存在数据库中;其次,你需要完成数据的增删改查;再次,你须学会按某个具体目的编写程序。这时,你已经成为一名软件工程师了。

一般来讲,程序员可以分为两种,一种是“游击队员”,他们可能对编程工具很熟,能力很强,编写的程序简洁高效,却缺乏规范和合作的观念;另一种程序员个人能力不一定很强,但程序较为规范,合作意识良好。第二种人更有可能成为软件工程师。

培养对行业的认知

软件工程师要就市场论技术,强调面向对象的分析与设计能力。毕竟,大多数软件设计师需要让计算机解决实际问题,因此,必须清楚地认识实际问题。IBM一份《中国银行业加入WTO的新纪元》白皮书显示,IBM做银行业咨询顾问的最终目的还是推销自己的整体解决方案,占领中国金融业软/硬件服务市场。IBM的行动告诉我们,要想让技术和产品介入某一行业,仅有大批专业技术人员还不够,还需要有对行业的认知和把握能力。

朱志辉以过去给银行做项目为例:最初天天听银行工作人员讲借方、贷方,他并不十分理解,用现实生活中的事例去“代”总是出错,直到有人说借方表现为资产减少,贷方表现为资产增加,他才真正明白。朱志辉说,事情很小,但这说明软件工程师一定要了解、使用行业语言,学习、掌握行业知识,真正理解所在行业,否则,只能一直是一个程序员。

熟练掌握英语

程序世界的主导语言是英文,编写程序开发文档和开发工具帮助文件离不开英文,了解业界的最新动向、阅读技术文章离不开英文,与编程高手交流、发布帮助请求同样离不开英文。

作为基础软件工程师,具有一定的英语基础对于提升自身的学习和工作能力极有帮助。而且,软件行业的发展一日千里,编程工具软件的更新换代十分迅速,软件工程师总是需要在第一时间学习业界最流行、最先进的编程工具软件的使用方法。

通常,在一种软件刚刚面世的时候,软件工程师是不可能找到这种软件的中文使用说明或中文帮助文档的。如果软件工程师在软件工程专业英语方面达到了娴熟运用的水平,就可以浏览英文的文档、英文的帮助文件,在最短的时间内掌握最先进、效率最高的软件工具的使用方法。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 软件工程师
    +关注

    关注

    8

    文章

    217

    浏览量

    21112
收藏 人收藏

    评论

    相关推荐

    硬件工程师找工作必备书籍推荐

    硬件工程师找工作必备书籍推荐
    的头像 发表于 09-24 16:07 541次阅读
    硬件<b class='flag-5'>工程师</b>找工作<b class='flag-5'>必备</b>书籍推荐

    嵌入式软件工程师如何提升自己?

    嵌入式软件工程师如何提升自己? 作为一名嵌入式软件工程师,在这个充满机遇和挑战的领域里,如何提升自己显得非常重要,它决定了你未来的发展方向和成就。接下来,我们起探讨
    发表于 06-12 11:20

    索尼诚邀软件工程师参与PS免费手游平台设计

    据悉,近日,澳大利亚知名媒体TweakTown发现,索尼互动娱乐正在为其旗下的PlayStation Studios Mobile招募一名资深的软件工程师,负责设计PlayStation的免费手机游戏平台。
    的头像 发表于 05-23 17:08 664次阅读

    嵌入式软件工程师和硬件工程师的区别?

    嵌入式软件工程师和硬件工程师的区别? 嵌入式软件工程师 嵌入式软件工程师软件开发领域中的种专
    发表于 05-16 11:00

    Cognition发布首款AI软件工程师Devin

    据报道,Cognition公司今日公布了其首款人工智能软件工程师——Devin,掀起了打造软件模式变革的序幕。该产品在SWE-bench代码测验中展现出卓越表现,甚至超过了部分顶级人类工程师的水准。
    的头像 发表于 03-13 10:57 578次阅读

    单片机如何通过代码控制硬件:一名工程师的分享

    今天跟大家聊聊单片机是怎样通过代码来操控硬件的。作为一名单片机工程师,我们平时的工作就像是给单片机编写“指令集”,让它按照我们的意图去驱动各种硬件设备。
    的头像 发表于 03-06 14:46 1331次阅读
    单片机如何通过代码控制硬件:<b class='flag-5'>一名</b><b class='flag-5'>工程师</b>的分享

    优秀电源工程师需要哪些必备技能?

    就带大家细数下优秀电源工程师具备的那些技能。、新手必备课程成为一名电源高手需要扎实的理论基础,涉及电路原理、语言编程和控制理论等多个学科
    发表于 01-29 11:29

    一名嵌入式工程师的涨薪经历

    下面是位嵌入式工程师的涨薪经历,希望可以帮助到你,帮到其他的在校学生。   阶段 1 大到大三这个阶段我与大多数学生相同:   、学习本专业知识(电子信息类专业) 二、学习嵌入式
    的头像 发表于 01-05 08:39 398次阅读

    嵌入式软件工程师常用的

    最近我换工作了,看见不同嵌入式软件工程师用的平台都不样,所以我整理了下。PlatformIO:多平台支持:PlatformIO支持多种嵌入式平台,包括Arduino、ESP8266、ESP32
    的头像 发表于 12-24 08:00 609次阅读
    嵌入式<b class='flag-5'>软件工程师</b>常用的

    优秀电源工程师必备技能大揭秘!

    就带大家细数下优秀电源工程师具备的那些技能。新手必备课程成为一名电源高手需要扎实的理论基础,涉及电路原理、语言编程和控制理论等多个学科领域。为了帮助大家更好地掌握
    的头像 发表于 12-19 08:23 1641次阅读
    优秀电源<b class='flag-5'>工程师</b>的<b class='flag-5'>必备</b>技能大揭秘!

    硬件工程师必备的音频功放电路大全

    硬件工程师必备的音频功放电路大全
    的头像 发表于 12-07 17:25 1142次阅读
    硬件<b class='flag-5'>工程师</b><b class='flag-5'>必备</b>的音频功放电路大全

    经典设计经验笔记,电子工程师必备基础知识

    电子发烧友网站提供《经典设计经验笔记,电子工程师必备基础知识.pdf》资料免费下载
    发表于 11-21 11:13 15次下载
    经典设计经验笔记,电子<b class='flag-5'>工程师</b><b class='flag-5'>必备</b>基础知识

    电子工程师必备基础知识

    电子发烧友网站提供《电子工程师必备基础知识.pdf》资料免费下载
    发表于 11-20 11:29 36次下载
    电子<b class='flag-5'>工程师</b><b class='flag-5'>必备</b>基础知识

    如何成为一名优秀的嵌入式工程师

    如何成为一名优秀的嵌入式工程师?嵌入式学习的第步,首先是C语言。 1.理解内存管理:C语言不同于高级语言,它不会自动管理内存。因此,你需要理解并掌握如何使用malloc()、free()等函数
    发表于 11-07 15:36