七年阿里老人谈新人程序员的成长

更新日期: 2019-07-17阅读: 1k标签: 程序员

先做事再做人

新同学常有这些困惑,到底是做技术还是做业务?是每天加班加点写代码还是空点时间来看书学习?是先追求广度还是先钻研一门技术?是两耳不闻窗外事一心埋头做事还是和同事打成一片参加各种活动?这些问题也曾困扰着我。

我觉得新人到一个团队最关键的是在前3年建立个人品牌,为什么?当别人对你完全不了解,你做的第一件事非常重要。你给别人留下的印象会蔓延到整个公司,所以第一件事一定要做好。怎么才叫做好?在职场中,并不需要时刻比拼智商,大部分情下,做事认真一点、考虑更深入一点、积极主动一点,已经好于70%的同学了,这样的同学我们都称之为“靠谱”。

获得了合作伙伴包括主管的认可,自然获得的机会就会更多,做的事也会更复杂,合作伙伴也会越来越强,这样就会形成正循环,成长就会比较快。所以前3年需要通过做事形成自己的影响力,积累人脉,锻炼自己的对未知事物的判断能力,因为随着你做的事情越来越多,专业知识能覆盖的范围会越来越小,遇到越来越多自己不懂的领域。你不可能掌握所有知识,因此培养判断力非常重要。包括对事物未知发展方向的判断、事情产生价值的判断,以及对人的判断等。

所谓后3年做人,是更多发挥出人的价值,不仅仅把事做好就行,包括在合适的时间做合适的事。在公司里做先烈的情况有很多,找到多个团队的共同价值点把事情一起做好,其实这个最难,因为越有价值的事情,涉及到的利益方也会越多,平衡好各方的诉求是事情成败的关键。事情做好后还要有人帮你宣传等,这当中可能会涉及人的性格、交际能力、向上管理等综合能力。


善于发现兴奋点

刚入职时,一般所做事情的难度都不大,这时很容易形成落差,阿里目前招的都尖子生,但有时候到岗位才发现每天做的都是琐事,因而感到失望。如果长期不调整好心态,很难发挥出工作激情,人也慢慢平庸下去。当初我和大部分同学一样,也是从最基本的日常工作开始做起,在做这些事时,我对自己的要求是,代码层面不出Bug,注释写清楚,按时发布,这些都是最基本的要求。我还会利用业余时间做好几件事。

发现工作中可以提升效率的地方,可以把琐事的事情工具化,记得当时在做一个搜索需求时,发现传给搜索的参数非常多,而且每次拼URL异常麻烦。因为工具是给运营同学用,所以便做了一个页面,把参数做成表单,运营同学只要在对应的字段(含义有说明)表单中填入值,就可以自动生成最终URL,提升了他们生成URL的效率,也肯定受到了运营同学的好评。

除了发现工作中可以提升的效率外,还可以积累人品,比如我们曾经有个小图书馆,借书信息需要一位同学人肉记录,于是我做了个图书管理系统给那个同学用,收获了友谊。

除了在主动和积累人品外,最重要的还是要积累技能,我曾把在公司用到的中间件都深入学习一遍,并且写成学习文档,和其他同学写那种简单的使用心得型文档不同,我写的学习文档都是分析设计原理,为什么这么设计,用到了哪些设计模式,关键的技术点等。那些工作几年,对中间件熟悉的同学也会有兴趣来看。但公司的同事毕竟有限,写作文章也会花费不少精力,所以我要寻找新的动力继续写下去。当时我从写公司独有的框架转到写公司内外通用的技术框架,如Spring、iBATIS、Tomcat等JVM技术。并且找机会投到杂志和网站上,一方面有经济回报,另外更重要的是能收到反馈信息。

善于从工作中找到源动力非常重要,做一件事情从不同角度发现其中的价值可以始终保持做事的激情,如果事情做好,可以得到感谢、称赞和认可,获得更多知识。找到正向的反馈,附带获得知识和影响力,然后促使自己持续把事情做好。

写文章和总结有多种好处:

可以系统地沉淀和总结自己的学到的知识,只有经历这样的过程,知识才记得牢。
可以增加影响力,因为分享给别人带来价值,才有人关注你。
给做事增加动力,尤其是那些琐碎的事。如果把琐碎的事情都连接起来,说不定也能收效显著。


与人协作

在与人协作上,这几年我的感触也很深,从最初的想一个人完成所有事,到现在尽量让别人完成所有事,这种转变真是很特别。公司中的大部分事都是团队协作,以公司中常用的项目运作模式为例,一般会有一个项目经理(PM)、一个或者多个架构师,若干个不同功能的开发,其他就是不同的岗位分工,如PD、UED、测试、PE等。PM和架构师两个角色刚好给两个同质的团队利益分配提供了很好的选择,PM一般会拿到业务结果,而架构师能体现这个项目中的技术成果,典型的场景是一个很好的技术通过PM来落地而达到双赢。与人协助上有几个阶段需要经历。


别人的想法当成自己的想法,帮别人实现。很简单,初期与人合作,要把别人的事当作自己的事,并且想方设法实现好,该做螺丝钉的时候也要做好。

自己的想法自己实现。新人常害怕把自己的想法说出来,被别人抢去实现了的担心。回想起来我也担心过,实际在工作中的确有些同学善于盗取别人的想法,尤其再抢着给老板汇报就更讨厌了。但现在想想这种担心并没有必要,因为更重要的不是想法而是实践。对新同学来说,多想少说多实践才是王道,千万不要少想多说少实践。如果你有好的想法不妨说出来,并且实现demo证明可行,如果证明靠谱也不用纠结最终名义上的结果是不是你能获得,就像我前面所说的,先做好事,不用急着去争名,这个时候正是积累以后的福报。

自己的想法由一帮人实现。这个阶段最重要的就是平衡利益,合理的让每个项目成员都能获得最大利益是项目成功的关键,不仅是参与项目的成员还包括成员的老板,仅仅把事情做好只是第一步,项目要发挥出最大价值,还要有老板们帮你宣传,才能有更多落地场景,最终的成功需要天时地利人和。

自己的想法,让别人说出来,并且实现。你的想法变成了别人的想法,并且最后实现了出来,如果到了这个阶段,那么你肯定已经是一个有影响力的人了。新人无疑最忌讳这个情况,但如过前面几个阶段都做得很好,遇到这种情况也会很淡定,因为这时你应该是一个Leader了,而Leader要做的正是这个。

与人协作时,我觉得《Choice》课程中介绍的影响力金字塔非常有参考价值,把最大时间花在对合作伙伴能够产生影响的人,建立良好关系最有成效。大家可能会说,不就是那群天天在公司不干事只会拉关系的人吗?其实建立关系只是一个手段,建议关系能产生什么的结果才是最终的目的,影响力是最有效的协作。


老板希望你做的

亲身带领团队后,我也算打入了组织内部。总体还是健康的组织。判断一个组织有没有生命力,就看这个组织的Leader是不是最能干的人,而且组织要有能够保证最能干的人能成为Leader的机制。

当然我主要想讲的不是如何给老板拍马屁,如何和老板套近乎,而是介绍主管最希望的做事方式:

第一步要和主管取得相互信任,注意我说的是相互信任,这个最重要。你信任主管无非因为你内心对主管服气,或是知道他是真心愿意培养自己。主管信任你主要是交给你的事情能够漂亮的完成,认为你死心塌地的跟着他。很多管理事故无非是这种相互信任没有建立导致的。

积极主动给老板带来一些惊喜,是你获得更多机会的助燃剂,老板一般喜欢两种人,一种是听话的人,兢兢业业的完成交给的任务;第二种是总有新想法并且爱折腾的人,有想法还不够,最好是有结果。很显然第二种人更容易获得提拨。

适当给老板找些麻烦也有好处,这里所谓的找麻烦有两重含义:
一是,要有自己独立的主见,即当发现明显有问题时还听之任之,只会让老板觉得你没有主见。积极表达自己的观点。当然,这要基于大家都是正直的人,如果你的老板小肚鸡肠,那还是好自为之吧。
二是,尽量不要让老板的认知范围完全覆盖你的认知。如图2所示,如果这样,你在老板眼里就是个透明人,因为你的所有思考和行动都在他的可预知范围内。所以在工作场景中用到的知识深度、广度或者其他技能上你要有所长。比如技能上你擅长前端,或者线上运维非常好,又或者思考问题非常全面,再或者逻辑推导能力很好,图2是一种比较理想的状态。


“当然有种情况也要避免,就是当你掌握的知识如果大于你的老板的话,你可能会觉得老板不如你,但是千万不要忘了,他的推理范围可能还是远远覆盖你,也就是对事情的判断能力,所以也不要过于自大。”

有句话说“跟对好老板是你一生的福气”,的确如此。以我的观察,好老板就是那种情商很高但是内心真正简单透明的人,职场权术有很多,但仅仅靠权术不可能真正获得长久的成功。


最后想说的话

不管你是刚走出校园,还是大咖加入新的环境,前期精力都应该放到具体的小事上。先以事服人,再以德服人。


链接: https://www.fly63.com/article/detial/9465

1024节日的由来,程序员的你最想对自己说的是什么?【1024程序员节日】

吃饭睡觉写代码,基本都程序猿的大部分生活了,作为从事最累的职业之一的我们终于有了自己的节日,那就是1024。1024向程序员致敬,向自己致敬,向未来致敬。

一个程序员的运气有多重要

互联网注定是一个不能安宁的行业,有一些人在努力引领变化,有一些人在努力适应变化,有一些人在被时代的浪潮淘汰。这个世界唯一变的就是变化,人生唯一不能停的就是学习,说到底,要想不被淘汰,只有不断的学习。

如何成为10倍速的程序员

国外有个词叫做10x Programmer,直译是以一当十的程序员。我并不认为一个技术大牛能完成10个普通程序员的工作,技术大牛会花1/10的时间把工作做完,然后用剩下9/10的时间平衡生活、爱好和未来,所以我仅把10x Programmer叫做10倍速的程序员。

优秀的程序员是不看源码的,这是真的么?

仍是要永远 ctrl+v,永远拿来主义。仍是要时时刻刻对美好满怀期待,对未来充满渴望,对经典心怀敬畏。要记住啊,能原创而不原创,有源码而远源码,才是最无知的成熟。

优秀程序员的十个习惯

优秀程序员有哪些好的习惯:1. 想清楚,再动手写代码,2. 不交流,就会头破血流,3. 文档没人看,但还是要写,4. 一定要写注释,5. 别指望需求会稳定

程序员和用户

我曾经说过,程序员不是一般的人,是具有某种超能里的人。但问题是,程序员往往意识不到自己的这种特异功能,在他们的眼里,会认为自己很普通,跟常人一样,所以,程序员能做到的事情

一个程序员送给大学生弟弟的那些话

分析自己的处境; 做适合自己的选择; 以成长为目的,担负起更多责任,打破对做事的认知; 把握机遇,去锤炼自己; 抛弃一些懒惰,多一些积极;向牛逼的人靠近,向给你提供条件帮助你学习的老师靠近。以上结合了我自己的经历,希望文章能更形象。

程序猿跳槽季,为什么你的薪水总升不上去?【转载】

现在身处跳槽高峰季,作为即将跳槽的我,在这里分享几点建议给大家。众所周知,找工作的前提是面试,面试的前提是过了简历,过了简历的前提是你怎么投。

程序员养生攻略_程序员防猝死指南

程序员在其职业生涯中,健康问题尤为突出。但是大部分程序员只顾码字,却往往忽略了自身的健康问题。这或许是因为写代码太入神,也或许是因为来自老板的压力太大。

程序员笔名、别名_适合程序员的英文名字

一个厉害的程序员,都会有一个牛逼哄哄、有辨识度有个性的英文别名。在公司同事中很更好的称呼,这篇文章翻译整理了一下适合程序员的英文名字

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!