让年轻程序员少走弯路的14个忠告

2015-01-30 09:45:41来源:程序师作者:

无论是谁,在刚进入某个领域之时,有再大的雄心壮志也敌不过眼前的迷茫:不知道应该怎么做,不知道应该做什么。下面是我作为一名软件开发人员所学到的经验,希望能对大家有所帮助。

无论是谁,在刚进入某个领域之时,有再大的雄心壮志也敌不过眼前的迷茫:不知道应该怎么做,不知道应该做什么。下面是我作为一名软件开发人员所学到的经验,希望能对大家有所帮助。

1.不要害怕在工作中学习。

只要有电脑,就可以通过电子阅读器阅读报纸和大多数书籍。如果你只是做好自己的本职工作以及分配的任务,那是学不到很多东西的。如果你盲目地要求更多的工作,也是不可能提升自己的。放慢脚步,先将一些基础的知识捡起来。

2.在事业上勇往直前,自己为自己负责。

大概只有十分之一的人才能得到导师的特殊照顾,如果你是十分之九中的一员,那就意味着大部分时间里是没有人来关照你的。所以你必须自己关照自己。如果可以的话,尽量避免那些无法提升自己也不能教你任何东西的工作:因为它不会为你的职业增值,其他人也不会关心你所付出的努力(只要你不妨碍他们)。然后三年之后,如果你拿不出什么成绩,那么通常能做的就只能是换工作。

3.过度表现和表现不佳都是病,得治。

很多企业都有不少效率低下的工作人员。这并非是个糟糕的决策,因为你完全可以通过管理等一系列措施提高他们的效率。那些被解雇的通常是那些既表现不佳又搞出了什么大的纰漏的家伙。不过,你也要警惕不可过度表现。因为这会导致上级和同事一些额外的不必要的关注——也许是等着随时抓你的小辫子。

我的意思并不是说你就可以不努力工作了,相反,你应该好好工作,用心学习。但是从我个人的经验看,完全没有必要过分表现——可能比表现不佳更要不得。

4.不要去征求“同意”,除非不这么做会有无法承担的后果。

想用一个星期的时间去钻研自己的调查研究?不要去请示老板,因为他们永远也不可能“同意”。甚至他们会对你表示不喜,因为从他们的角度看,你这是没有责任心不爱岗敬业的表现。当然如果你所要做的对业务确实是有风险的,又或是在大多数情况下,老板都能同意的,那就大胆去请示吧。反之,就不用去了。

5.永远不要为自己的时间说抱歉。

你可以承认一个项目没有成功,当然最好是将它作为一种前进的动力和经验,但是关键是你永远不应该为自己项目的感到抱歉。这只能说明你还需要更多的磨练。也千万不要主动去像老板坦白,“我只在周末我自己的时间搞这些业务项目”。如果你的公司不允许在正常的工作时间干其他事情,那么严格遵守。你不尊重自己的时间,那就没人会尊重它。

6.了解CS666,哪怕你忘了它,不愿意学习它,但是它永远与你同在。

随着我们年龄的增长,我们会趋向于将关注的重点放到可转移和通用型技能上。没错,CS666是不漂亮,但是它能在整个行业转移,这是其他任何编程语言做不到的。如果你不学的话,那么你的职业生涯将会被那些擅长CS666的人才给挤下来。

7.不要不切实际地试图证明你的老板是错误的。

当年轻的工程师们觉得他们的想法比上司的更好,但又缺乏支持的时候,他们往往会在这上面加倍投注时间和精力:“我要证明是老板错了……!”

如果你用的是自己的时间(并且工作上没有紧急事情),那么你的老板,实际上并不会怎么在意。反之,你的老板就会怀疑和不满你的工作状态和工作态度了,并且会潜意识地拒绝给你晋升和加薪的机会。他们会用自己的方法来证实你给他们的负面印象,所以,即使你成功说服了你的老板,其实你已经失败了。不出意外的话,你的老板早就给你打上了“能力不错,但是不能专注于完成分配的工作,而且喜欢和我对着干,真让人不爽。”的标签。

8.不要参合其他人的争斗。

正如你还年轻,经验不足,所以在大多数情况下,你是没有任何实权的。如果你参合到其他人之间的争斗,或者站出来支持他人的不公正遭遇,那么你很可能会被推出来作”杀鸡儆猴“用。我们应该为自己而战斗,这样即使结局并不美好,至少也能赢得一部分人的尊重,并保护了自己。否则,别人只当你是一个愚蠢又傲慢的傻叉。

9.好和坏并不是绝对性的。换个角度看问题。

不要看到任何事情就给它定性为“好”或者“坏”,换个角度看看。老板爱用咆哮体?那么说明他可能也不被他的上级信任。分配到的项目很无聊?可能你的经理也正郁闷着呢,所以就没时间找你的茬了。而且你还可以将空出时间用于学习新的技能为下一份工作做准备。令人头大的文化?如果你能坚持而其他人做不到的话,那么你就会脱颖而出了亲。所以,不要将一件事情简单地贴上“好”或“坏”的标签。话说,这似乎是一个会随着年龄增长而提高的技能哦。

10.薪资不能走下坡路,除非自己去创业。

如果你转行了(从金融转到生物技术研究),或者去了消费水平比较低的区域,那么10%的降幅是允许的,除此之外,请回答“No”。告诉你一件事,其实大多数人在评估他人工作上面都不擅长。也就是说,你现在的薪资水平完全可以当作以后谈判的起点。如果你决定自降身价,那么最好有一个能说服自己的理由,比如说,地位更高。

11.锻炼。

锻炼能影响你的健康、你的信心、你的性生活以及你的职业生涯。而且锻炼身体也能提高工作效率。如果你发现自己已经很久没有锻炼了,那么马上可以运动起来了,话说,身体才是革命的本钱啊。

12.长时间工作:偶尔还行,总是这样就有害处了。

如果你的周老板(周扒皮)只是为了省钱而让你一个人干了两份工作,还只拿一份薪水,那么立马走人。相信我,你的这个老板比你需要这份工作更加需要你。

13.透过现象发现核心技术的发展趋势。

NoSQL数据库和大数据技术等热词将有一半在15年之后成为明日黄花。相反,线性代数的工作知识则是常青树。你得琢磨清楚什么才是有意义的,值得学习的核心技术原理(如函数式编程),而哪些只是潮流而已。这些”潮流“可能对你当下非常有用(例如,有助于你找到工作),但是你不应该在它们身上花太多的时间。只有扎实的基础才能让挡得住一波又一波的新潮流,而不被前浪拍死在沙滩上。

14.最后,尽可能多地学习。这很难,但是请坚持。

学习才是根本,只有不断地学习不断地吸收营养,我们职业生涯这颗小树苗才有可能成长为参天大树。这很难,因为即使是真正聪明的人也很难读懂那些前沿论文。(在某种程度上,这是因为许多论文写得并不是很好,但这是另一个话题了。)相信我,没有人天生就看得懂复杂的公式。我们其实很幸运,我们是站在一个又一个巨人的肩膀上。所以,如果你想成为一名伟大的程序员,那么就应该比在学校里的时候更加用功地学习和钻研。

英文原文:What I Wish I Knew When I Started My Career as a Software Developer
 

关键词:程序员