程序员可以说是21世纪的当红职业,因为薪水高、工作时间自由、疫情间居家办公等等优点受到不少人的青睐。

互联网行业虽然已经过了朝阳期,内卷逐渐严重,但仍然属于壮年期,相比于互联网其他行业基本都属于夕阳行业了。进入互联网行业最好的时机最好就是十年前,其次就是现在。

就个人感想来说,如果你家里有矿,或者是一个精英人才,那么可以考虑律师、金融、投资、创业等行业,或者说可以考虑公务员。不然的话,程序员仍然是大多数普通人最理想的行业。(当然精英人才也可以做程序员,这些人要不成了 CTO,要不就自己创业搞了个科技公司)

常见问题

非计算机专业能当程序员吗?

可以。

著名前端框架 Vue 的作者尤雨溪,就是从设计师转的程序员。

有很多人成功转行程序员,在于程序员职业的特殊性。与很多职业不同,程序员不是很依赖专业、文凭、证书。

打个比方,比如你是律师,如果你没有名牌大学学历,怎么向客户证明你的实力?你要转行生物医药专业,没有对口的专业文凭,那怎么证明你在大学几百万几千万造价的实验室中学习过?没有这些临床学习谈何能力?还有土木行业,没有几个证上岗那就属于违规了,国家对于土木要求的证书可是有明文规定。

程序员这个行业不一样,企业对于程序员的要求就是能开发产品,仅此而已。

程序员的水平可以通过项目经历或者面试轻易地了解到,这就表明不太需要学历来证明自己(算法工程师、人工智能等需要深度数学功底的职位除外)。当然学历也是能证明自己的学习能力,逻辑思维能力之类的,这些是通用的。

学习编程开发一台两千块的二手电脑就能应付,也就不需要对口的专业去实验室学习。如果有人说他自学当上了飞行员,你会不会觉得他是个傻子?如果他说自学当上了程序员,是不是就靠谱多了。

而且编程开发不需要考这个证那个证,证书的意义就是证明并担保其能力。既然通过项目和面试能轻易得出实力,并且技术体系日新月异,那这些个证书就毫无意义了。也推荐学编程开发不要花钱花时间去考证,一般的证书企业是不认的。

要成功转行程序员,唯一要做的就是通过不断学习提高自己的水平,并写出足够优秀的项目。

35 岁危机是存在吗?

35 岁危机是真的存在的。

互联网这个行业是一个快节奏行业,为了抢占市场先机,公司开发一个产品或功能甚至会以天作为单位。这表示公司会存在加班的需求,不管是有偿还是无偿加班,这就需要程序员有充足的精力。

编程开发技术的变迁是以月为单位的,每隔几个月开发语言就会更新一个版本,几个新语法。如果让一个十年前,甚至五年前的前端程序员穿越到现在,他就已经无法应付现在的开发需求了。这就要求了程序员的技术必须保持更新。

对于企业来说,一个刚毕业的程序员意味着他的精力充沛,技术体系也比较新,更重要的是工资也低,因此淘汰老员工更换新员工就很正常了,毕竟办企业不是做慈善。

想要避免35岁危机,就得提升自己不可替代性

首先养成终身学习的习惯,保证自己的技术体系永远最新。学好基础知识,了解计算机原理,技术永远在变,但原理是不会变的。

其次,从全局的角度去学习技术,避免单一的技术体系,比如作为前端多花重心去学习项目构建、自动化部署方面的知识。这些技能就是自己升任技术负责人,甚至 CTO 的关键,职位越高你的不可替代性越强。

在有得选择的情况下,尽量选择一些尊重劳动法的企业,比如一些外企或国企,也是保证自己不被轻易淘汰的方法。

怎么才算得上一个优秀的程序员?

在 35 岁危机的内容中已经提到了部分点,这里再扩展一下。

  1. 自学能力。 程序员是需要终身学习的,这里不再赘述。
  2. 自律能力。 自学肯定是需要一定的自律能力。
  3. 解决问题的能力。 程序员的自学和工作会经常遇到各种问题各种 bug,老板需要的是能完成工作而不是闭卷考试,因此只要能解决问题完成工作什么方法都是可以的。这就要求我们善于去分析问题的原因,善于向身边的大佬请教问题,那么描述问题的能力也是我们必须的。善于使用谷歌、github、stackoverflow 等网站去搜索我们的问题。
  4. 英语阅读能力。 现代科技多发源于西方,特别是编程开发领域。很多著名的开源库都仅有英文文档,我们开发工作中又会经常用到这些开源库。因此英语阅读能力也是不可或缺的。