对程序员职业的一些建议

对程序员职业的一些建议

自从四年前被CSDN采访后(“职业规化就像软件工程”),经常会有网友(尤其是刚毕业的)写邮件来问我一些程序员职业生涯的一些问题,至到今天。比如,国企还是外企的选择,一直编程有没有前途等等问题。面对这样的邮件,我感到有很大的压力,因为如果我的回复很有可能会误人一生,但我另一方面又很想帮助这些人。所以,我基本上还是会尝试回一下这样的邮件。昨天,我又回了一封。但是我心里还是有点忐忑不安。害怕说错了什么。

今天,我想把我的一些思路和建议写在这里,一方面供大家参考,另一方面也想听听大家对我的评判,这样不但对更多的人有帮助,同时对我自己也是一个帮助。

下面是某网友前天给我发来的邮件:

我是一个刚刚毕业的大学生,我觉得自己对于程序员这个行业感到很迷惘,所以发邮件打扰您一下,麻烦了。

我今年正在找工作,我现在有几家国企的offer,百度的offer还在等待,我觉得第一份工作对我来说很重要,因为第一份基本决定了近几年或者一辈子你在哪个行业发展。家里人都是希望我签国企,但是我自己对技术很感兴趣,一直希望能在技术上面走下去,签国企虽然很轻松但是我总觉得在技术上学不到什么有用的东西,所以我个人倾向是去百度。

我现在很迷惘的是,如果我一直在程序员这个行业上走下去,以后的出路应该是什么呢?还是一直到高级工程师,还是项目管理这种程度吗?

我现在听很多人在说程序员必需要转行,因为一辈子在编写代码,没有什么好的出路,对于这点,您有什么看法吗?我现在才刚刚从学校毕业,对IT这个行业也不是非常了解,但是我觉得自己自学能力很强,而且确实很想学些东西,你对于一个刚刚毕业的计算机学生有什么建议吗?

信件的内容我没有改变,我相信很多人都有相似的问题。我昨天给这们朋友回复了邮件,下面是我回复内容的一个整理。欢迎大家讨论。

首先,我想说的是,这些东西只是我根据我的经历给出的建议,仅仅供大家去参考你的路你的人生要你自己决定,不要轻易的让人帮你决定,那怕是你的家人

如果我们把所的问题一起谈,那怎么说也说不清楚,所以,请允许我“关键点分离原则”来分开说说。

一、对技术的热情

如果我们喜爱编程,喜爱技术的话,那么,我们就会投入热情,自己会去专研很多东西。就像你以前对某个东西痴迷一样,你可以在工作之余还在学习和专研这些东西,你会经常和人讨论这些东西。不知道你是否会和我一样有一种感觉,如果你不学习技术,你不去专研,你就怕被淘汰,你就会感到不舒服。

所以,我们一定要问我们自己一下,我们自己喜欢技术吗?喜欢技术到什么程度。只是感兴趣还是喜欢?这两个不一样。兴趣能让你开始让你执着,但只有喜爱才会投入热情,只有投入热情才可能会出成绩。这个问题你要问问自己。

  1. 你有多大的热情在这个事业上?
  2. 你对你自己的自我价值的实现的诉求有多大?

如果你很有热情,可能到了有些痴迷的程度的话,比如,你会因为专研某个问题,学习某个东西,尝试某个东西,达到废寝忘食的程度,而且以些为乐,那么我非常建议你走技术的路线。

二、对技术的能力

有兴趣,有热情,并不代表你就一定行。你需要很清楚地认识到,你还需要有能力(我在《再谈“我是怎么招聘程序员”》一文中说了程序员的四个事,操作技能,知识,经验,和能力,大家可以去看看我对“能力”的定义)。你需要反思和重审一下自己是否有能力,你的学习能力怎么样,是经常需要问人,还是可以自己专研?你的思路怎么样,是否能被有经验的人认可,还是能够影响别人?

兴趣和热情只能让你很执着,但并不一定能让你走好这条路,只有你的能力和你的强项才能让你走好这条路。希望大家能够清楚地认识到这其中的差别。

所以,你一定要对自己做出一个判断,要学会反思,如果你是有能力的适合走技术路线的人,那以我非常建议你走技术路线。

我也尝试创过业,但我觉得我这种人是“谋士”,不是能攻城拔寨的“将军”,创业更需要的是“将军”,我目前只能是一个辅佐他们的“谋士”,所以,我也只能尽力能成为一个级别高点的“谋士”。

三、再说说工作的事

我比较同意的”第一份基本决定了近几年或者一辈子你在哪个行业发展”,但又有一点点不是很同意。因为我毕业的时候,在银行混了两年,然后又去一个国企业呆了2年。所以,第一份工作并没�