来自技术的焦虑

By | 2019年4月6日

前段时间一个同学和我聊到,他的工作是传统行业,部门技术较为落后,想要换方向,想从C++转到Java。说我有过类似的经历,听听我的经验。

我说C++的经验我仅限于刷题以及面试,而写Java又只是在业务层面做些简单的复制粘贴罢了,不会啥。

我想了想,觉得其实这个话题可以衍生为三个子话题:1)业务与技术;2)技术的新旧对我们提升的影响;3)我们能够学到的技术有多新。

为什么某个业务不使用新技术?

技术是服务于业务的,一块业务不使用新的技术,可能是因为压根就没有这个必要。甚至,当下业务场景使用新技术带来的问题,可能会比收益还多。

技术的新旧对我们的提升有影响么?

很明显,是有影响,但是影响有我们想象的那么大么?我个人认为在一个技术较为落后的团队中,个人的提升空间依然很大。第一,我们都是刚毕业,编程功底还没有特别扎实,基本功扎实这一步,新旧技术的影响是比较小的,这是技术层面的提升。第二,技术是服务于业务的,旧的技术不妨碍我们理解业务,这是业务层面的提升。第三,写代码的高层次抽象是解决问题,但是解决问题不仅仅是靠写代码,在一个需要不同团队协作才能解决问题的复杂系统中,思考方式、协作能力等软实力的提升,都是潜移默化的,这是个人通用能力的提升。

我们可能一直保持自己掌握最新或者是较新的技术么?

不太可能。在一个发展较快的行业里,技术是在不停迭代出新的。新来的应届生很可能就会掌握更新的技术,而且从一个较长的时间维度考量,我们的学习能力(简单得说就是体力、脑力的一个函数值)是在下降的,那么我们到时候如何能够比应届生带来更多的产出?可能这才是我们应该担心的问题。

下面分享两个身边发生的事情以及我个人的启示。

我们组一个工作七年的“老员工”,上家在京东,本来是写C++的,后来因为技术栈更新,开始迁移到Java,当时他已经工作4年左右了,这从头再开始学习新的技术栈,得失怎么算呢?

我们部门合并到北京,现在有一个服务要使用北京的,人家用的是C++和Scala,变化总是不期而至。

做为一个程序员,不应该只拘泥于某一个平台或者某一门语言。在中国程序员的“黄金时代”,可能“一招鲜吃遍天”足以。现在互联网的人工红利已经过去,新入行的程序员更需要把基础打牢,才能适应未来职业发展上的一些变化。

发表评论

电子邮件地址不会被公开。 必填项已用*标注