我是涛思数据创始人陶建辉,刚满53岁。先回答一下这个问题,涛思数据研发工程师(包括我自己)的平均年龄正好35岁,目前总共有42位研发,60后就我一位,70后有6位,80后16位,90后有19位。很巧的是,我们公司所有人在一起的平均年龄也是35岁。
相对于很多互联网公司,我们公司的平均年龄偏大,有两个原因,1:我自己年龄偏大,而且历来认为年龄不是写程序的障碍,2:我们是做底层软件的,没有好的技术积累的,根本做不了。
年龄偏大的程序员在研发中能起很大的作用,表现在几点:
- 因为久经沙场,抽象能力、数据建模能力很强,从表面上五彩缤纷、错综复杂的用户需求里,一下就看到问题的本质。这是做好一个产品最需要的技能,而年轻的程序员是很难具备的。比如我2016年底研究物联网数据时,就认为时序数据的处理与消息队列没有本质的区别,存储的架构是完全一样的,这就是抽象。
- 表面上IT技术更新很快,但从根本上看,其实变化很小,而且各种开发工具越来越好用,要解决问题的方法其实没有什么改变。这些基本的方法是需要在工作中积累的。比如我们TDengine,你就得十分熟悉各种缓存的机制,线程的调度,内存的管理等等。如果你写个简单的KV存储都写不出来,那是没法开发TDengine的。
- 因为工作时间长,什么样的人都见过、什么事都见过,工作中的心态会更正常,对自己的定位会更清楚。而年轻的,不少是心高气傲、眼高手低,有的从小到大,一帆风顺,是难以接受批评和挫折的,还没受过任何社会的折磨,因此工作往往不稳定,这是公司不喜欢的。
大家都在讨论35岁程序员的问题,认为程序员就是吃青春饭的,我不这么认为。即使不做TDengine这样的底层软件开发,就开发普通应用,程序也是可以写一辈子的,虽然不象老中医一样,越老越吃香,但至少年龄不是障碍。有几点理由:
- 所有行业都有35岁问题。社会是一个金字塔型结构,任何行业,塔尖的总是少数。对于年龄偏大的程序员,只要调整心态,不抱着非要做经理、做总监、做CTO的想法,抱着工资每年必须涨多少的想法,就老实的写程序,做一线开发,机会有的是,老板一定喜欢。
- 中国、美国还需要大量的程序员,随着数字化转型的深入,所有行业都要数字化,这就需要大量的程序员。以汽车行业为例,随着智能驾驶的普及,传统的机械、电子已经不那么重要,软件已经成为汽车的核心,福特汽车公司一半以上的工程师已经是软件工程师。你为什么要离开一个还在高速增长的行业呢?
- 程序员的工作是世界上最好的工作。第一:待遇是所有行业中最不错的,即使二本毕业,工资都比名校的那些传统专业高不少。第二:程序员的工作是最客观的,边界是最清晰的。如果程序有BUG,性能有问题,那一定是你程序问题,你多花时间就行。做管理、做生意那才是困难的,因为太软性,自己不可控的因素太多。
对于年龄稍微偏大一点的程序员,我还有一个建议,那就是参与到开源项目中,比如我们TDengine(https://github.com/taosdata/TDengine)。因为代码是你最好的简历,代码是你实力的最好证明。当你看了我贡献的近5万行TDengine代码,你一定不会怀疑我的编码能力。如果你为某个较为流行的开源项目贡献了哪怕仅仅几千行代码,我想所有人都不会再问你年龄、学历、工作背景,因为那些都是多余。
如果认为你研发能力不错,但已经不受老板喜欢,那就加入涛思或者做TDengine贡献者吧,我们公司、我们TDengine项目都没有年龄歧视。