“life is like a box of chocolates,you never know what you‘re going to get” —— 《阿甘正传》
生活就像一盒巧克力,你永远不知道下一颗是什么味道。
毛毛匆匆这两三年
大学毕业近三年,三年时间说短不短,说长也不长,我是一名程序员。这两三年经历了许多,也成长了许多。
作者是一名程序员,从业年龄不长,三年不到的时间,但时常都能感觉到自己身上有着巨大的压力,来源于生活上的,也有来源于对工作未来的些许担忧,或许自己还未曾明确自己的职业规划。
相信很多人都曾今对自己的职业生涯有过迷茫,本篇文章也只是想带着自己这两三年的经历来说一说,作为一名程序员,我们的职业生涯应该如何的进行规划,从事其它行业人也可以看一看,或许也能触类旁通,有所收获。(PS:工作年限不长,说的不妥之处,请多多指教)。
专业技能方向的规划
这是我个人对于程序员职业生涯规划的一些想法。在我大学接触程序员这个行业的时候,就经常听许多人说,程序员是个青春饭,30岁之后你没有转行管理你就只能改行了之类的。当时我心里还有些担忧,我对于转岗管理非常的抵触,我非常喜欢敲一辈子键盘(我没啥大志-_—)。知道我工作后看到我40多岁的老大还在敲代码,我的心又放下来了,同时也告诉自己,我要努力,以后也这样。
在这日新月异的互联网时代,作为一名互联网从业者,首先我们得树立终身学习,终究就业的心。生命不止,奋斗不息。
程序员只是一个笼统的称呼,在程序员里,又分了许许多多的工种,首先,不论我们是从事哪方面的工作,我们都不能把自己局限在某一个领域,一定要有意识的去开阔自己的视野,整个计算机领域是如何发展的、互联网时代的演化方向和趋势(就像之前多PC时代到移动互联网时代再到现如今非常火热的人工智能大数据时代),我门需要去了解不同的编程语言和不同领域的基础知识。触类旁通,才能不断提高自己。
其次,我们得提高自己的专业知识水平,算法和数据结构是我们必须得会的,这是基础,你的基础有多好,决定你日后能站的多高。不要让自己在大楼已经建了一半之后再回头去补这些基础知识,这会让你得补偿失得。
除了上述基础理论的沉淀之外,我们还需要去不断的实践,写代码光靠读(读资料书,读别人博客,读别人代码)是远远不够的,程序是写出来的,只有经过大量的实践,我们才能验证这些理论,再能更加深刻的体会到为什么是这样,知道了为什么是这样,我们才能做的更好。就像刚开始完成一个功能需要100行代码,而两年之后你也许10行代码就搞定了。因为我们写到多了,不断了抽象、优化了。
职场上的选择
在职场上,每个人都有着自己的想法,我们应该如何去选择一个公司,我们应该多久跳一次槽呢?经常能在群里看到有人问,我面试了几家公司,有几家公司愿意要我,我去哪一家好之类的问题。
每个人都想找一个钱多活少离家近的工作,但是这只是最美好的想法,现实总是会有各种各样的因素来制约我们,当生活上有事情的时候,我们或许需要选择一个活少离家近的,当我们经济上压力比较大的时候(房贷、车贷)时,或许钱多才是我们第一考虑的因素。当我们还是刚出社会的时候,我们的专业技能和工作经验不足的时候,我们可能就需要选择活多机会多的工作。
30岁之后我们时继续做技术还是继续做管理呢?
这是许许多多多程序员都想过的问题,也是许许多多多程序员面临过的问题,目前的我还没面临这个问题,但我也曾经想过这些。最后,我得出结论:
我们都有着自己最终的目标,万变不离其宗,跟着自己内心的想法时什么,我门只要心里想着自己最终要得到什么,那就可以了。不论是管理还是技术,都能达成我们的最终目标。毕竟我们都是希望能够让自己在工作的非常开心的同时还能够不为柴米油盐发愁罢了。
好马配好鞍。如果你是一个偏向于管理,或者你的能力和你的性格适合在管理岗位上,那么你就可以往这个方向走,因为这样可以能让你比较舒服的实现自己的目标。如果你是一个偏向于潜心研究的人,那么技术方向获取是你不错的选择,你可以专攻技术向,成为一个技术专家。
成为自由职业者或者创业?
除了选择在公司就职之外,我们还有其它的选择:自由职业者或者创业。两者都需要你积累人脉。(如何积累人脉?将在后面的换工作板块中阐述)
自由职业者:当你的专业技术水平比较高并且人际口碑很不错时,你可以选择成为一名自由职业者,与公司合作,单独接项目去开发。
创业:创业也是许多人在职场上摸爬滚打许多年之后的选择。当你认为自己有机会并且有一定的资本时,你可以选择去创业,创业这条路,有着无限可能。自己做好思想准备即可。
关于换工作
在我们职业生涯中,换工作是正常的,我们需要通过换工作来提高自己(能力和金钱)。我们经常在想,我们什么时候该换工作呢?如果我辞职了,我多久才能找到一份满意的工作呢。
在我看来,我们每一份工作的时间不能太长,也不能太短,频繁的换工作绝对不利于自己的职业生涯发展。
给大家算一笔换工作的账:换工作意味着今年可能没有年终奖,然后离职到下一份工作又一个空闲期,这段时间你只能吃老本,进入新公司你有几个月的试用期,这几个月试用期你可能会只有80%的薪水,还没有五险一金。你还需要面临没通过试用期的风险。所以每次离职都是成本挺大的。
为什么需要换工作?
在一家新公司,我们不仅会接触到其它编程语言,还会接触到其它的工作方式和新的同事。跟不同的人合作,我们总是能学到不同的东西。并且,我们会积累人脉,这对于我们以后找另一份工作,也是有帮助的。
改变工作的另外一个原因是避免感到无聊,如果5年甚至10年我们一直在做同样的事情,那么可能我们不会在学习了,太安逸了。改变工作,我们将学习新的东西,迎接新的挑战,同时也会增加我们的就业能力。
在同一家公司里,我们也可以变换自己的角色,我们可以从开发人员变成测试人员,也可以变成产品经理,岗位的流动可以让扩大我们的技能包。
不管怎么样,我们都要有意思的去改变自己的工作,我们不能只停留在原地,等待着被迫改变,我们应该化被动为主动,抓住主动权,我们才能更好的把握自己的命运。
为什么不能在一份工作上做太久的时间呢?
在同一家公司呆了10年,15年甚至20年的人,那么他找另一份工作相对于五年左右换工作的人的机会和竞争力将大大减少。就像去年华为辞退老员工引发大议论一样,根源在于他们下一份工作的收入和机会将远远低于现在的。因为和他的专业知识对口的公司太少了。而其它方面的技术他们又不如别人。更重要的是他们已经不再年轻,思维留下了太多以前公司的烙印,再想改变已经没有那么容易了,欢聚换来讲,他们没有太大的竞争力了。
为什么不能在一份工作上做太短的时间呢?
换工作的弊端在前面已经阐述过了,所以一份工作我们需要一段时间。每一份工作我们都能在其中学到不少东西。我们需要积累和沉淀,频繁的换工作,会有以下不良的影响:
在职业圈内给人留下不安分,不忠诚的印象,在这个互联网时代,世界那么小,培养自己的职业道德和人际口碑将会给你带你很大的影响,是好是坏,全在于你自己怎么做。
在一个公司我们会接触到公司的业务,短时间你接触不到核心的业务,那么你学的东西肯定价值没那么大,在一个公司我们需要花时间去研究、接触这家公司的业务,这样才能培养自己的能力,才能在简历上写着自己负责了什么项目。其次,每个公司都是一个社会,我们融入这个社会,把这里面的人际关系处理好也需要时间。
好了,这篇文章就给大家分享到这里,由于作者自身工作经历也不是很长,所以观点难免有偏颇之处,文字排版也做的不是很好,能看到这里的都是很有耐心的人了。非常感谢您的阅读。觉得作者写的还不错的话,就点个赞或关注下吧。
PS:本文首发于今日头条:新农民的编程之旅