软件开发人员应具备的基本素质 !!!

简介:

去年带了几个新人,越来越觉得软件开发这行还是需要一定的"天份"的,其实每行都需要一定的"天份",每个人都有自己最为适合的行业,特别是技术行当而言,如果真的希望在软件的技术领域有所发展的话,勤奋、吃苦的精神固然是必须的,但以下的几点素质却是基本的,而有些我觉得完全是靠天生的,或者后天小时候的努力才能培养出来的,如果不具备的话,我觉得这样的人就不是很适合从事软件技术行业:

1、逻辑思维能力
这点非常非常的重要,而且我觉得这点在等到大学毕业后再培养真的非常难,从这点上去看就会发现数学对于软件行业的人来说是非常重要的,为什么这么说呢,数学正是能表现出一个人逻辑思维和举一反三能力的最好的考试,而逻辑思维和举一反三刚好是软件技术行业最为基础和重要的两点基本素质,为什么这么说呢?
软件的开发其实和数学的解方程是个非常类似的过程,都是对某个问题求解,有些问题甚至完全不懂软件开发其实也应该是能解决的,如果不懂具体的如何写代码的话顶多差的就是把解决问题的方法转化为代码而已,而这个培养起来我觉得并不是什么难事,这个只要多写写代码就行了,举一个简单的例子,在培养新人的时候曾经出现过个这样的问题:要生成一个九位的字符,字符由流水号构成,当不足九位的时候补足九位,例如1就形成000000001,9999就形成000009999,不需要写代码,只需能说明会怎么做就是了,我觉得具备了一定逻辑思维能力的人这样的问题都是很简单的。
在将来我自己面试新手的时候,这方面的面试需要重点加强,以前我忽略了对于这个方面的考量。

2、举一反三能力
举一反三的能力对于软件技术行业来说更是非常非常的重要,其实软件开发日常的工作中通常你所做的东西都是有类似的东西的,只是会稍有变化,这个时候就需要具备举一反三的能力。
这项能力在将来的面试中也需要重视,需要让面试的人当时学习一个以前的未知领域,首先给面试的人员一个解决方案,然后将问题稍加改变,看看面试的人是否可以做出解决方案来。

3、自学、独立解决问题的能力
自学、独立解决问题的能力我觉得这是为什么一定要读大学的原因,读大学就是培养自学、独立解决问题的能力的。
在做软件开发的过程中,不论是新手、老手都会碰到各种各样的问题,这个时候一定要学会有效的解决问题,在perl界有一篇给新手写的解决问题方法的建议的文章非常的不错,http://www.perlchina.org/archive/archive.php?action=archive&page=6,建议做软件开发行业的人应该都读读。
个人比较推崇的解决问题的方法:
3.1、在时间较为充裕的时候,google--->看原理---->问身边的人---->问IM上的人--->找相关的专业论坛---->学习相关的知识
3.2、在时间紧张的时候,问身边的人---->问IM上的人--->google--->找相关的专业论坛---->看原理---->学习相关的知识
不过即使在时间紧张的时候,当时间闲下来后,都应该整理下问题的解决方案和学会隐藏在问题后的本质。

4、对软件开发的兴趣
这点呢,还比较难说,因为新手来说无法判断自己是否有兴趣,很多人也许是向着软件行业所谓的高薪而进入这个行业的,兴趣而言,我觉得判断的标准就是能否为了一个开发上的问题废寝忘食,:)
另外一个方面来说,做软件开发必然会面临很多重复性质的工作,这个时候只有有兴趣的人才会继续的对技术坚持下去,才会继续的去钻研相关的技术,从而提升工作的效率、质量。
当然,除了上面说的几点外,其实象承受压力的能力、沟通交流能力、团队合作能力、责任心、上进心等等都非常的重要,但这些能力我觉得相对而言是可以培养或用公司制度等方式来控制的,但以上说的4点基本素质我觉得非常的难培养,尤其是1、2、4这三种能力,对于希望一直从事软件技术行业的人来说我觉得是否具备以上几点非常的重要,否则还是早点转行比较好,哈哈。


本文转自博客园 小蚂蚁博客,原文链接:软件开发人员应具备的基本素质 !!!,如需转载请自行联系原博主。

相关文章
|
8月前
|
项目管理 UED 开发者
优秀技术产品经理应具备的关键能力
在技术开发领域,技术产品经理在项目中起着至关重要的作用,他们不仅需要具备项目管理的技能,还需要精通技术领域,能够理解和引领团队在技术层面上的决策,他们以技术的视角对项目进行管理,确保项目按时高质量交付。而且优秀的技术产品经理不仅是项目组的主心骨,还是技术决策的参与者和项目推进的关键人物。那么本文就来探讨一下如何成为一名优秀的技术产品经理,一个优秀的技术产品经理应该具备的关键能力,希望能够为那些渴望成为优秀技术产品经理的人提供一些启示和指导。
109 2
优秀技术产品经理应具备的关键能力
|
5月前
|
项目管理
软件项目经理需要具备这 11 个能力
软件项目经理需要具备这 11 个能力
317 1
|
敏捷开发 存储 设计模式
大型项目技术负责人应该具备的能力
大型项目技术负责人应该具备的能力
127 0
|
人工智能 运维 监控
从维护性工作到软件开发革命,运维 15 年间的大逆转
在 InfoQ 成立 15 周年之际,InfoQ 编辑部发起了“2007-2022:云、运维、架构、前端的 15 年演进史”特别策划,将和业内专家共同盘点云计算、运维、架构、前端四大技术领域的演进历史,试图从几个切面窥见 IT 技术的演进规律。本文是运维篇。
702 0
从维护性工作到软件开发革命,运维 15 年间的大逆转
|
项目管理
浅谈高风险多团队协同的项目管理方法
高风险多团队协同,一直是互联网项目管理的重要课题。本文从实践出发,对高风险多团队协同的项目管理进行梳理总结,归纳出核心议题与可执行的方法。希望对项目管理者有所启发和帮助。
6405 0
|
测试技术 项目管理
10、软件质量工程师指南 - 软件项目角色指南系列文章
第9章      软件质量工程师   软件质量工程师也是分配在项目质量控制部里的编制,对项目的软件编码质量等进行管理,与软件配置工程师相比,主要偏向于对项目的质量控制部分进行管理。虽然在项目管理过程里没有详细划分这个岗位,但是在项目管理中仍然需要软件质量工程师对整个项目的质量进行控制管理。
4072 0

热门文章

最新文章