新闻是有分量的

如何成为一名高级软件工程师

2018-08-27 21:52栏目:通信

  在我上初中的时候,我接触到了一种名叫BASIC的程序汇编语言。当我第一眼看到它时,我就梦想着能有一天成为控制计算机的主人。而在我进入了大学后更是学会了理性地看待我的目标,在对自身作出了比较全面而客观的分析和比较后, 我选择了高级软件工程师作为我大学四年甚至整个人生的奋斗目标。

  高级软件工程师是IT行业中的重要岗位。 根据开发进度和任务分配, 完成相应模块软件的设计、开发、编程任务; 进行程序单元、功能的测试, 查出软件存在的缺陷并保证其质量; 进行编制项目文档和质量记录的工作; 维护软件使之保持可用性和稳定性。 软件开发是一个系统的过程, 需要经过市场需求分析、软件代码编写、软件测试、软件维护等程序。 软件开发工程师在整个过程中扮演着非常重要的角色, 主要从事根据需求开发项目软件工作。

  软件和信息服务外包产业已成为各个国家经济发展的重点。 从增加值角度来看, 同样金额的出口, 服务外包对中国经济的贡献是来料加工的20倍以上; 从能源消耗上看, 服务外包单位GDP能耗仅为制造业的20%. 这在中国政府大力倡导可持续发展战略以及大力发展高技术第三产业的主旋律下是适应中国经济发展, 也是符合中国社会客观需求的。 可以看到的是, 未来中国软件和信息服务外包产业发展空间巨大, 其原因有三: 首先是具有成本优势, 中国低成本的竞争优势是全世界公认的。 第二, 具有人力资源优势, 中国是世界上人力资源极为丰富的国家, 软件和信息服务外包服务业是劳动密集型产业, 中国未来在软件和信息服务外包业内将成为全球最具竞争力的转移承接地。 第三, 中国有非常庞大的国内市场, 这是中国吸引跨国公司进入很重要的一个原因。

  但与发展潜力不对称的是, 现今中国软件和信息产业人才相当缺乏,据调查研究显示, 当前中国软件和信息服务外包产业人才流动率较高, 而且缺口很大。 企业成立时间比较短, 规模大多比较小, 企业人才平均流动率达18.28%, 这和缺乏培训、业务来源不稳定、报酬机制不够合理等因素有关。 同时由于产业发展迅速, 人才供不应求, 尤其是本地化人才和中高级管理人才。

  市场需求的巨大和专业人才的缺乏令人吃惊,但这正是商机和盈利的重要突破口。 可以预见,中国软件和信息服务外包产业将在不久的将来成为引领中国第三产业转型和发展的龙头产业, 相关职业包含高级软件工程师的人才需求将会非常巨大。

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

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

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

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

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

  对于一个立志成为高级软件工程师的人, 最重要的其实是强烈的好奇心和学习精神。 没有比强烈的好奇心和学习精神更好的武器了, 它是成功的工程师乃至在各行各业的成功者们永攀高峰的源泉和动力所在。