够用就好,还是深究其本质?

    对于软件开发人员而言,每天都会面临一些新的技术问题;大家通常的反应是通过搜索引擎找到相应的解决办法,能够解决即可;亦或在技术方案中,采取一些开源项目来解决特定的问题;一般而言,都是通过快速的学习和quick-guide通读,就直接上手用了,至于背后的内容和原理,则一般很少涉及。

    这就是我们通常所说的,够用就行,无需花更多的时间在其他的地方,即使其余的部分功能很强大,实现机制很精妙。

    对于项目本身以及公司管理层而言,这个是正确的选择,以最少的成本,合理的时间进度,实现客户或者产品的诸多需求。技术本身就是为了业务而服务的,技术本身只是实现的手段和工具,业务才是核心,公司管理层可以不关心起实现技术和方案的选择,但肯定非常重视产品是否如期发布,商业目标是否可以顺利实现。这一切和技术有关,但技术其实很边缘化的内容。  总之,技术只要能够解决问题,满足要求即可,够用就好。

    对于技术人员本身的发展而言,这个并不是一件好事,尤其对于那些希望自己在这条路上继续前行的攻城师。知其然而不知其所以然,学之大忌,导致的结果就是,长时间的用,而没有深入其中,对于技术水平的提高会形成一个阻隔。毕竟,使用都是很低层次的东西,5年和2年经验相比的技术人员,除了速度略有差异之外,区别并不太大。在这个事情上,经验的价值没有体现出来。 对于公司而言,更喜欢使用2年工作经验的,因为性价比。

   对于工作有一定年限的攻城师而言,你的价值体现在何处呢? 我们来简要分析一下

  •    项目经验

                 本质上是除了技术编码,项目其他方面的经验,比如,行业背景,项目管理,团队管理,客户协调等等。可以称之为软技能。

  •    编写代码的经验

                 做技术的直接产物,写代码,按照年头算或者行数算。

  •    对技术的理解

                 新技术层出不穷,流行词日新月异,然后,技术本质上的更新和变化其实不多。这个其实是对技术底层的理解和把握,一旦掌握,剩下的就是一通百通,原理类似或者一样,只是表现形式或者略作改进。

  •    实际问题的解决能力

                问题永远存在,很多问题,永远没有现成的答案,这个是基于之前的三点的综合体现,这个是综合素质的体现。

     基于之上的简要分析,可以发现,这个行业,编写代码只是其中很少的一部分,大部分都是在其基础之上延伸出来的技能和素质。  那如何来提高这些呢?

    1.    思考,多问why?

            囫囵吞枣是大忌,不管是技术或者人际关系,多思考,多总结,并记录下来,裨益良多。

     2.   多涉猎,无局限于一隅

            写Java代码,是否就无需关心Database的设计?是否就可以在项目中安稳做自己的事情,而无视团队的协调协作问题呢?答案不是。虽然是技术,但是,如果想继续上行,需要你多储备技术和各个方面的素质,项目管理,行业动态,技术前沿,不论将来自己创业还是继续上行,这些都是必须的。

     3.  设想未来,定位自己的发展

           有目标,才有后续的行动。如果想自己创业,就需要提前储备各个方面的技术和能力、关系和行业发展动态等等。 如果想在技术上深入,就需要到一个有机会深入应用技术的公司或者项目中。如果实在不行,那就自己在业余时间独立做一些项目或者把好的想法实现下来,这对于提高自己的技术,是很好的提升。

   

      以上是我今日在想到"够用就行“的一点思考吧。

够用就好,还是深究其本质?

上一篇:HDU--杭电--2899--Strange fuction--二分


下一篇:动态配置log4j