专栏首页Java架构师进阶程序员千万别被技术绑架

程序员千万别被技术绑架

通常我们说程序员需要在某个技术方向上积累到一定的厚度,要能够运用技术有效地解决实际问题。可是当程序员在某一项技术上浸淫时间长了之后,却经常会出现另外的问题,那就是:看待问题时受限于自身的技术积累。

我打算从几个方面来谈这个话题。

一定有某一项技术最适合解决某个问题

有的人对 C++ 比较熟悉,在开始一个新产品或新项目,比如做一个 Android App ,就会考虑怎么用 C++ 来实现目标,于是就会去找可以用在移动端的 C++ 框架,比如 Qt ,比如 NDK + Native Activity ……这是一种受限于现有技术的情况,其实呢,我们可以跳过 C++ 的藩篱,直接找 Java 去!

在我看来,技术是用来解决问题的,当我们要解决某个问题实现某个目标时,技术可能有很多种,可能每种都可以实现,但不同的技术面对的难度、付出的成本一定是不一样的!对于公司、个人来讲,都应当选择综合成本最低的那项技术。

当我们做技术方案选型时,应当问“这项技术适合解决哪类问题?”、“这类问题最适合用哪种技术来解决?”,而不是问“我掌握的技术该怎么解决这个问题?”。

如果你总是想尽一切办法用已经掌握的技术来解决所有问题,虽然这种担忧未知害怕变化害怕尝试的心理可以理解,但我觉得这不是一种健康良好的心态,也不是一个有益的习惯,它其实发出了“你被所学技术奴役”的告警信号。

要知道,我们学技术是用来解决问题的,是要能够灵活有效的控制和运用掌握的技术,而不是把自己交给某项技术反受技术左右的。

一字槽口的螺钉就要用一字螺丝刀,内六角的螺丝就要用内六角的扳手。这是很直接很简单的道理,我们在生活中会下意识地遵循这种规则,而一旦我们面对技术这种相对复杂的事情,却往往不能回归到事物的本源,这是需要我们思考的。

换工作时拒绝换技术

当程序员熟练掌握了一门技术(比如 Java,C++,Qt,Spark……),他在选择新工作时就经常会主动给自己设置路障,不用 Spark 的公司不去,不用 Qt 的岗位不考虑……其实我觉得这是不必要的。

学习一门技术当然有成本,用精通的技术来解决问题会有得心应手驾轻就熟的感觉,能够事半功倍。这是非常好的。但是,等等!难道你真的打算一辈子把自己局限在某项技术上吗?难道你认为你干了N年程序员就只获得了这项技术?

我觉得不是这样子的。你熟练掌握了某门技术,这当然是你非常重要的收获。但是这绝不是最重要的,真正重要的是下面两点:

学习能力

解决问题的能力

对,你没看错,这才是一个程序员在精通一门技术后真正的收获。

你通过掌握、精通一门技术发现自己的学习模式确认自己的学习能力,一通百通,再学其它技术就会快很多,因为你获得的有关学习的经验和认知是通用的。所以,我认为发现自己的学习模式强化自己的学习能力是真正核心、重要的收获之一。

还有,技术只是一把剑,这把剑的威力如何,就看使用它的人怎么样因地制宜审时度势的运用它。攻守之道,妙乎于心。真正的高手,摘叶飞花皆可伤人。这就是解决问题的能力了,同样的太祖长拳,在乔峰手里就有摧枯拉朽的气势和震慑人心的威力,这就是乔峰的本事,这个本事是独立于太祖长拳的。程序员也一样。所以,解决问题的能力是一种真正重要的收获。

如果你确认你已经收获了学习能力和解决问题的能力,那具体的技术就已经不重要了,它也不应该成为你选择新工作新产品的绊脚石。不设限,天高海阔任你遨游。

招人时限定精通某某技术

我们会发现,绝大多数公司在招聘开发工程师都会列出诸如“精通 J2EE ”、“精通 MySQL”、“熟悉Hadoop”等非常细的技术要求。

对公司来讲,招聘拥有相关经验和技术的人才能够大大降低一个产品(项目)的成本,这本无可厚非,因为公司都是成本敏感的。但是对于程序员来讲,有时这是不公平的。

不公平体现在两点。一是没有相关技术经验的程序员会因此而失去学习新技术的机会,对于那些刚毕业不久或意图转换技术方向的人来讲则更是残酷的。二是拥有匹配技术的程序员,自身发展会因为公司的这种倾向而受到限制,甚至裹足不前,他们会觉得,原来你仅仅是想利用我已有的技术和经验来解决你的问题啊,技术人员的价值是在不断战胜新的挑战的过程中提高的,失去面对这种挑战的机会,他们的能力和水平就会原地踏步,甚至回落、下降。

其实在我看来,招聘人员时,拥有相关技术并不是最重要的,一个程序员是否具有学习能力和解决问题的能力才是关键!有了出色的学习能力,他一定能够快速掌握产品需要的各项技能;有解决问题的能力,他一定能够解决新产品开发中不时跳出的各种意外。也就是说,选择程序员时,公司更应该从一个人的才干和能力出发,而不是盯在某项具体的技术上,合适的人会带给公司更多,唯有把正确的事情交给正确的人,成功才可预期。

总之,不论是程序员还是需要程序员的公司,都应该从人才的核心出发,发现关键才干和能力,不要被具体的技术蒙蔽,不要让已有的技术成为包袱,不要让自己的视野受到不必要的限制。心不设限,将来就没有终点。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 钱多话少死的早的程序员你嫁么?

    我是一个苦b的程序员,今晚加班到快通宵了,困得快睁不开眼了,女上司很关心,问我要不要吃宵夜。我没好气地说,宵夜就算了,能让我睡一觉就行了。女上司红着脸说了句讨厌...

    java架构师
  • 技术变化那么快,程序员如何做到不被淘汰?

     中国有很多年轻人,他们18,9岁或21,2岁,通过自学也写了不少代码,他们有的代码写的很漂亮,一些技术细节相当出众,也很有钻研精神,但是他们被一些错误的认识和...

    java架构师
  • 程序员:如果你月薪过万,还认为能力决定一切吗?

    这是一个整天和代码打交道的群体,也被称为“程序猿”,在不少外行人眼里,很多类似工作的职业人都被称为程序员,其实并不准确。WEB前端也是敲代码,但算不算程序员呢?...

    java架构师
  • 为什么大多数公司都不重视技术?

    国内很多开发人员在公司的地位很低,在团队里面得到的尊重甚至连测试,运维都不如,基本是处于食物链的最底层,更别说熟悉公司业务的产品经理岗位了,很多程序员自嘲为码农...

    phoenix.xiao
  • 互联网技术管理是必要的么?请听听公司、老板和程序员的心声

    这是《数字化互联网技术管理的方法和实践》第一讲,为什么讲技术管理?谁需要技术管理?

    老杨说技术
  • 技术学习的“深”度与“广”度发展

    “ 日常工作与学习中,我们会接触不同的技术。学的时候,涉猎广泛,学的越泛越多,不知道的也就越多。本文围绕提高自身生产能力来描述一下观点。有点毒舌。”

    赵腰静
  • 2017年高等教育十大战略性技术(二)

    编者按 EDUCAUSE分析和研究中心(ECAR)不久前发布了《2017年高等教育十大战略性技术》报告,报告主要描述2017年美国高等院校正在投入的技术,《高等...

    企鹅号小编
  • 当面对热门技术时,你焦虑吗

    有为数不少的小伙伴会时常会感到焦虑:自己使用的技术老旧,工作中也基本用不到新技术,经常跟不上新技术的发展形式,出去找工作时担心没公司录用自己,担心失业等等, 特...

    歪脖贰点零
  • 技术最好的时代,会是技术创业最好的时代吗?

    当世界进入千禧年以后,我们看到21世纪已经被技术从根本上作了重构。云计算、大数据、人工智能、区块链、5G技术让互联网世界从计算、数据、分析、可信到连接上都做到了...

    TVP官方团队
  • 如何突破技术发展瓶颈

    技术学习的困惑:当达到一个瓶颈时,可以学习的参考系越来越少,首先是因为高端技术人才呈现倒金字塔形态,身边缺少能引领你的人生导师;其次,业内的技术交流,大多数在...

    用户1289394

扫码关注云+社区

领取腾讯云代金券