年轻程序员的追求

题目可能有点大。毕业一年多,我其实只是想写写自己对刚从学校毕业的码农对自己所做的事的追求的看法。

这一年多亲眼见识了IT业的高度流动性,人们来来往往,放弃着、追求着。舍彼而去的原因有很多,慕名而来的牵挂无非有这么几样:薪水、氛围、前景,还有就是对也许很多刚刚毕业还没有完全洗去学校那带着淡淡理想主义香味的学术气的年轻应届生们来说最为重要的——那就是所做的实际工作。

打杂之类的就不用多说了。对于年轻码农来说,什么才是最有技术含量,最有吸引力的工作呢?这个问题可能不同的人会有不同的答案,过去我一直想不太清楚。很多时候一些看起来很有含金量的工作,真得走近了,也不过尔尔。读研的时候一直觉得自己做的项目技术含量不高,工作以后有机会接触到许多新鲜的事物,新鲜归新鲜,倒也不觉得自己所做就有多高的门槛。但是对这个问题的思考倒是慢慢有了一些比较清晰的答案,下面就说说个人到目前为止的一些想法吧。

在我看来,在互联网时代,最有吸引力的(也许不是最有技术含量的),最能让年轻的码农们热血沸腾的工作大致可以分为以下四种:(之所以强调年轻,是因为年长又没有转行的码农一般有了妻儿子女,更多的精力可能就放在经营自己的生活和职业发展上,不大会再去考虑这种虚的东西)

1、设计能支持某些海量数据、高并发要求的系统架构。这一类活可能和DBA、运维关系紧密,接近底层,甚至可能涉及到硬件的组织选型,需要一定的级别和经验才能做,也有一定门槛,不是在家里抱一本书自学就能学会的,需要大量知识和实践的积累。

2、编写能提供高吞吐、快速响应或者支持大数据量、联机处理的服务程序。这一类往往要求一些奇技淫巧,熟练使用各种数据结构和算法,在限定硬件条件的情况下将系统的潜能发挥到极致,颇有些智力题的味道,有比较大的发挥空间,应该是典型程序员的最爱,而且门槛较1低,挑战却可能胜过1。可惜现在硬件发展速度太快,这段时期算是这类工作的相对低潮期(程序运行太慢?加机器呗。吃内存太多?加机器呗。实在不行,直接写几个脚本扔到hadoop集群上,搞几千上万个节点,怎么也能满足一般的需求了)。但是人类需求的增长是无限,硬件的高速发展却总会有瓶颈期,而且即使是在低谷,也只是相对的低谷,还是有许多地方要用到一些复杂的算法的。

3、高可用性、能伸缩、可复用的编程框架。这一类活的机会比1、2都少得多,一般越成功就越是一锤子买卖,这类活可能涉及到一些设计模型和软件工程的思想。虚的地方比较多,编写某个基础框架的乐趣应该远不如最后看到全公司人都在用这个基础框架时得到的那种满足感更大,(当然如果再“恰巧”赶上维护和开发都由你来负责,那整个活就完全变成了一部喜忧参半的悲喜剧了)是一种结果大于过程的享受。

4、学习、接触、应用时下最流行最炫最新潮的技术。4的门槛最低,同时新技术对每一个工程师而言,应该就像新的电子产品对年轻人的吸引力一样,没有几个人能说对新技术完全没有感觉和好奇。应用也分深浅,但因为限定于最新的技术,所以很难钻得很深。不过4和前三类活倒不冲突,可以在干上面那些活的时候应用最新的技术,站在浪潮的前面。但是如果完全被各种五光十色的新玩意所吸引,只是一味地弄潮,玩久了也就只剩一身咸湿而积累不足了,害处也是蛮大的。

从以上来看,除了4以外,另外3种活正常情况下都不是太容易碰到,但是偏巧我们正处在一个互联网起步的时代,赶上了许多小公司飞速发展的时期,所以能做的机会也是有的。但是如果自身准备不足,就算有了这样的机会,也未必能真正做好,而如果不能做好,反而会使很多人迷惑而怀疑其自己的追求。

This entry was posted in essay. Bookmark the permalink.

1 Response to 年轻程序员的追求

  1. Pingback: 那就讲得远一点,从金字塔说起吧——续年轻程序员的追求 | Huang Hao

Leave a Reply

Your email address will not be published. Required fields are marked *