做一个 T 型人才,或者说博学且有专长,这类说法在很多地方都能看到,我印象中最深刻的是在 Valve 的员工手册中,大概是因为一直都期待能有一家企业回应这种说法吧。

看看现在的招聘,基本都指明了要什么后端,前端,算法之类的岗位,还会明确说明使用的技术栈和工具,当然不是说这样不好,让别人了解一家公司的技术栈还是很有必要的,某种程度上反映了这家公司的技术追求和技术积累。但是很多时候,我还是希望遇到那种例外的,因为我自己就是一个例外。

在我看来,大家从事这一行,其实多少都是自己真的喜欢做这件事,能从用编程语言实现一个东西中获得成就感和满足,享受这个过程,当然前提是你在做有意思的事情,而不是为了挣钱在拧螺丝。很多时候,做一件事需要很多方面的技术,这也是为什么需要团队合作。不过沟通始终是存在成本的,而且想要组建一个技术水平都强且比较平衡的团队其实很苦难,这个时候就需要有些人自己站出来,靠自我驱动去学习尽可能多的东西,并将其运用到实际中去。

听起来可能有点不切实际,明明是几个人才能做好的事情,为什么觉得一个人就能做好?因为大多数时候我们不需要把每个方面都做到极致,而只是部分地方足够好,其他地方足够用即可。如果是这样的话,一个人真的可以做很多事情了。而且,随着一个人接触的新鲜事物越来越多,他就应该有能力从中提炼出一套通用的体系,在这样的体系下学习新知识就会事半功倍。再者,一个人如果能掌握多方面的知识,也有助于在宏观角度上进行规划,设计出更好的架构。

于我而言,当然不能被自己工作上的职位所局限住。正式因为还没找到那种能让我感到狂热,明确知道自己愿意为之奋斗一生的目标,所以才需要广泛接触各种有意思的事物,不断学习新鲜事物,保持脑子的活跃状态。另外,也是因为自己只有一个人而已,而且在可以预期的将来也不会有什么变化,所以不得不尝试一个人完成项目。能有合适的人沟通自然是好的,不过就算没有,一个人也可以做很多事情了。

目前这个阶段,正是往宽的方向发展的时候,只有尝试过足够多的方向,才有可能找到最适合自己的,然后再考虑一步步深入。从基本的机器学习到各种深度神经网络,从后端到前端,从代码到设计,下一步大概是看看游戏了,大概了解一遍之后就要开始思考在哪里深入研究了,不过大概是离不开数学的,毕竟真正震撼人心的美还是要靠数学。