前言
新人找到工作后,首先肯定是高兴,但随之而来可能会有点担忧,害怕自己无法胜任工作,试用期被辞退。因为面对未知的事情,心里没底,这是正常的,但是只是担忧而不付出行动是没用的。本文结合我自身多年工作经验和我就职过的公司对新人的培训计划等内容,总结出来了新人初入职场快速站稳脚跟的一些重要技能,相信定能祝你安稳的度过新司机起步阶段。通用能力:学会做人
1、低调谦虚
无论你之前有过多么不平凡的过去,但是作为一个初入职场的新人,你就是一张白纸,很多事情都需要请教周围的职场老鸟。树大招风、枪打出头鸟,因此,请保持谦虚,给大家留一个好印象。举个简单的小例子,加班发朋友圈,树造 “我很积极我很努力” 的感觉。例如:对于老板来说,如果他想知道员工工作是否努力,他有无数种渠道,并不需要通过你的朋友圈。你的领导能坐到这个位置,发朋友圈这种小心机他不可能看不懂,所以他可能会表面上可能会给你点赞评论加油,但是心里会怎么想就不得而知了。而对于其他同事来说,大部分肯定会觉得不舒服,觉得你是个“心机婊”,从而疏远你。而且你这么发,不是在映衬他们没加班吗。因此,作为一个新人,你要做的就是悄悄的努力。与其告诉别人“我很努力”,不如拿着结果向别人宣示:“我很牛逼”。2、态度诚恳
在学校,你缴纳学费学习知识,老师会主动教导你。进入职场后,反过来了,公司付你钱,变成了你必须为公司创造价值。在职场上,你没有为任何人付费,没有任何人有义务去帮你,包括主管给你分配的师兄(导师)。因此,在向其他人请教时,请抱着诚恳的态度。别人帮你,你要懂得感恩,别人不帮你,你要知道是情理之中。说道付费,这边也有一个启发,就是在生活一些小事上可以做点事情。比如如果有合适的机会,可以请你的师兄或同事喝点咖啡啥的,后续别人可能也会更有意愿帮你。但是不能抱着别人喝了你的咖啡就必须要帮助你的心态。3、主动融入、积极配合
主动参与团建等集体活动,利用午餐/晚餐时间多和同事打成一片,活动、吃饭和饭后闲逛的时间,可能都可以从同事那听到很多对自己后续职场有帮助的消息。微笑面对周围的人,新人刚进公司,不管对谁都要笑脸相对,客客气气,所谓伸手不打笑脸人。微笑对人会让大家都觉得你还蛮容相处的的。有了这种印象后,会有利于后面的进一步接触。如果公司晚上需要适当加班,不要最早走,尽量控制自己走的时间在所有人里属于中间靠后的位置,当然,最好在主管之后。可能有人会问,如果是那种加班太狠的公司,例如到12点之后的了?对于这种情况,首先入职前要提前了解下公司的加班情况。如果入职后才发现,那你就需要仔细考虑下,这是你要的工作吗,是否能换个更合适的工作?当然,天天加班到12点的公司也不多,偶尔上线加班晚点我觉得能接受的。4、观察形势、少说多做
“祸从口出、言多必失”、“说话是银、沉默是金”,这些话流传下来不是没有原因的,多说就有多犯错的机会。在一些工作群或工作场合里,不该说话的时候尽量不要多说话,特别是有老板在的时候,更要谨慎。因为很多事情并不像你想象的那么简单,可能会牵扯到很多东西,你的视角和老板的视角不一样,多说就是让自己增大犯错的概率。5、学会欣赏而非妒忌
在同事做的好的时候积极赞美他人,任何人都是喜欢被夸奖的,夸奖他人,会让别人对你印象不错。6、不惹麻烦
专业能力:完成任务
1、信条:完成任务
新员工在入职后需要在心里记住这个信条,无论使用什么方法(当然需要确保合法...),你首先需要确保能完成导师(师兄)分配的任务。“完成任务”相当于是一条及格线,代表你达到了基本要求,如果能超前完成,或者完成的比较好,那当然就是更好了。2、入职前提前准备
新人入职后,搭建好开发环境、装好常用的开发工具,这个通常会给新人半天到一天的时间。而这个时间其实我们可以节省下来,就是你在入职前,可以先问下公司发的电脑系统是 mac 还是 windows,然后入职前先将所有需要安装的软件安装包先提前准备到 U 盘里,包括一些环境配置的教程也可以提前准备好,比如 JDK 环境变量配置,这样你在入职后就可以很快速的将整个开发环境搭建好,从而可能省下几个小时的时间去提前熟悉其他事情。3、实现一个增删改查的demo(短期目标)
搭建好工作开发环境后,接下来导师通常会让你熟悉一些东西,例如:开发流程规范、测试上线流程、常用的研发工具、框架和中间件。在这个阶段你需要完成一个很重要的事:实现一个简单的 demo,这个 demo 只需要满足两个条件:1)它是一个 PRC 接口,能通过单元测试调用;2)接口实现底层能访问到数据库,进行数据的增删改查。完成 demo 最重要的几个研发工具是:代码仓库(Git)、RPC 框架、数据库访问层中间件、MySQL 运维平台,有了这几个,基本你就能实现这个 demo 了,所以你需要先找师兄要到这几个工具的地址和相关文档。有了这几个工具的文档后,接着 clone 一个项目到本地,在项目中找到 RPC 框架和数据库中间件使用的地方,对照着文档学习如何使用。熟悉完之后,接着在开发环境完成上述 demo 的开发,这步做完,基本上你就已经能开始进入需求开发了。当新人进入需求开发后,一开始分配的也基本就是一些小的改动,新增或修改接口啥的,通过这个 demo 可以让你在刚开始接到需求后,能从容不迫的应对。至于各种流程规范、测试上线规范:可以先简单看一下,等到了具体做需求的时候直接上去多操作几次就行了,有些工具看文档很难懂,但是实际操作起来很简单,切勿在一些工具的使用上浪费太多时间。4、勤记录
好记忆不如烂笔头,师兄在像你介绍一个工具的时候可能会给你演示一遍,这个时候千万要认真看,结束后马上记录成笔记,后面要用的时候就不会再去问一次了。包括各种工具、网站,有点用的都收藏起来,但是记得归类,方便自己找到。5、写日报、写总结
日报有些公司会让新人写,如果没有,你也自己记录一下。通常包含几个内容:- 今日解决的问题和解决思路,解决过程要详细记录下来,如果内容比较多,可以将解决过程单独写成一个文档,然后贴一个链接,会给主管留下不错的印象
- 今日遗留的问题(如果主管不要求,可以不写日报里,自己私下记录即可)
如果公司有要求写日报,还是要认真对待,这是主观了解你最直接的机会,而且据我过去的经验,主管一般都会特别注意新人刚开始一段时间的日报。每个月的月末花点时间思考和总结本月的收获,并以文档的形式记录,这些日报和月度总结文档可以用于后续转正答辩的素材,有了这些素材,你会发现准备起来轻松了很多。6、学会写文档
很多程序员的工作模式应该是:拿到需求 -> 脑子里想好方案 -> 开发编写代码->测试->上线,然后继续下一个需求,如此循环。这种工作模式的缺点是,把自己搞的很忙,问你做了什么,你说不出来。如果主管没怎么关注你,可能还以为你在划水。当我们拿到需求后,第一时间先建个空文档,后续该需求的相关内容:方案、产品PRD、接口文档等等,都补充记录在该文档里。这样后续自己在填绩效、写年度汇报、写答辩PPT时,也能有个地方可以直接参考,就不会遇到想不起来自己做了啥的尴尬境地了。包括在解决一些问题、学习一些技术时,也可以通过文档的形式记录下来,形成自己的沉淀,可以积累自己的内部影响力。最后,写文档是一项越到后面越有用的能力,逐步锻炼自己写文档的能力,会让自己以后收益终身,网上不是还有人调侃说“面向PPT编程”。7、学会"模仿"
面试造火箭,入职拧螺丝,相信大都数人都听过这句话。这不是一句玩笑话,而是大部分的工作现状就是这样。大部分的工作内容,你都可以参考项目已有的代码或设计,要学会去“模仿”,然后在“模仿”的过程中,将该知识点掌握下来,成为自己的积累。同时,“模仿”的另一层意思是不要“特立独行”,有些同学可能有一套自己的(代码/设计)规范,但是在加入一个项目时,尽量还是按项目已有的规范来,这样整体看起来会更协调一些,同时也方便后续的维护,也不会让别人觉得你“特立独行”,从而引来一些其他的麻烦。8、学会使用搜索工具、利用好搜索引擎
这边的搜索工具,可以是百度、谷歌这种搜索引擎,也可以是公司自己内部技术博客(论坛)的搜索工具,也可以是 IDE 的搜索工具。小白很容易陷入一种场景,就是一看到报错就慌,然后就不知所措,或者就马上求助大佬。求助大佬一次半次还好,但是次数多了,并且都是一些很简单的问题时,大佬可能就不耐烦了,毕竟大佬也有自己的工作要忙。
所以在遇到问题时可以先自己尝试去解决,环境安装、报错等常见的问题,可以说 99.9% 在公司内部博客(论坛),或者百度(谷歌)上都能找到答案。所谓站在巨人的肩膀上,我们可以看得更远。搜索能力是很重要的一项能力,它可以借助他人的已有经验来帮助我们解决问题和学习成长,会贯穿我们的整个职业生涯,所以要尽早培养起来。9、学会提问
提问是新人必然会遇到的,但是在需要提问时,请尽量做到以下几点:1)提问前先尝试自己思考和解决,不要拿来主义。利用好搜索工具,先自己尝试找资料解决,能自己搜索解决的尽量自己搜索解决,可能自己不能完全解决,但是也许可以推进到某个程度,只是卡在某个点,这样对方能看到你是有经过思考和准备的,会更愿意回答,这样获取答案的过程,也会让你印象更深刻。2)提问时要礼貌。作为提问者,我们应该要谦虚一些,多用一些尊称、敬语。有些提问者更像是质问和命令式的口吻,这样的提问方式,肯定让人不舒服,别人能帮你解决才有鬼。3)提问时要找对人。在一个团队中,一般每个人会负责一个方向的业务,最好将每个人具体负责的业务记下来,当自己要提问时,搞清楚自己提问的模块是哪个同学负责的,否则找错人了,对方可能也回答不了你。4)提问内容简洁明了。梳理清楚自己问题的关键点,尽量简洁明了,问之前自己先读几遍,不要啥都整理就直接去问,说了一堆,对方可能都不知道你在说什么,既浪费了对方的时间,也给对方留下不好的印象。5)提问后有真诚反馈。收到对方回复后,及时表示感谢,因为对方在当下花了时间和精力在你身上,而他并没有义务要做这件事情。在你根据对方的回答解决了问题后,可以将自己解决过程中的收获分享给对方,这样对方会觉得自己的回答确实帮助到了你,会有一丝成就感,以后他还会乐于回答你的问题。心理学家莫勒说,提问是使你的大脑实现程序化的最强力的手段之一,因为提问具有强制思考的力量。10、敢于提问
不少新人可能会有遇到问题不敢问的情况,害怕其他同事觉得自己菜。担心自己问的问题太小白,显的自己没有水平、被人笑话。这个想法其实大可不必,程序员这行业其实大部分人还是比较友善的,对于新人大家其实都是比较宽容的,毕竟大家都是这么走过来的。所以在确认做到上述 “学会提问” 的前提下,大胆的问就是了,很多问题在你这可能想半天也解决不了,但是在了解的人那就是几秒钟的事情。搜索工具能解决大部分通用的问题,但是如果是自己系统的程序代码出现了意想不到的结果时,搜索工具是没法告诉你答案的,这个时候就需要通过 Debug 来定位问题了。在开发中,我们可以通过 debug 来定位开发时的问题,也可以通过 debug 来确认每一行代码是否按我们所预期的在执行,从而保证代码的正确性。在运行时,我们可以通过 debug 的 Remote 模式,也就是俗称的“远程 debug”来快速定位线上问题,该模式可以在本地直接拦截服务器的请求,从而让我们可以轻易的模拟一些有问题的场景,从而快速定位问题原因。在学习框架源码时,经常有一些接口会有很多个实现类,如果单纯的看,很难看出究竟是走到哪个类里面。通过 debug,可以清晰的看到请求的完整流程和相关变量数据,从而让源码学习更加简单。总结一句就是:Debug 是工作中的究极大杀器,一定要熟练掌握。12、主动学习
学习能力、学习积极性是主管评价新人很重要的一个标准,因此要利用部分业余时间进行学习,提升自己。互联网的发展非常快,干这一行的,想要走的更远、走的更好,持续学习是必不可少的,正如那句老话:学如逆水行舟,不进则退。具体学习的内容可以是公司自己内部的框架或中间件,也可以是一些优秀的开源框架,这边从个人未来发展的角度考虑,我推荐学习一些当前比较流行的开源框架,就是那种以后你只要在这行干,到哪个公司都能用得上的,例如:Spring、MySQL、JVM、RPC 框架(Dubbo)、缓存(Redis)、消息队列(Kafka、RocketMQ)等。很重要的,将自己的学习过程和自己的思考记录下来,整体成文档,然后在完成一个阶段后,可以将文档的链接贴在日报里,也可以在组内进行分享。13、转正答辩提早准备
转正答辩材料我建议在试用期过半时开始准备起来,这样时间会比较从容,有了之前的日报和月度总结,写起来其实就没那么难,一般分为几个模块:自我介绍、业务学习、业务产出、技术学习、未来规划。在写的过程中,也要换位思考,哪些内容可能被评为问到,需要提前思考。写完后找导师对一下,然后按导师的建议在修改一下,通常需要修改几版,大概答辩前半个月左右答辩稿就基本不变了,这个时候可以开始自己一个人模拟讲几遍,自己觉得差不多了就找导师和同事帮忙模拟讲几次,然后让他们提点问题和意见,这样准备下来,其实你的转正答辩就非常充分了,通过只是水到渠成的事。最后
面试系列和职场系列文章持续创作中:,有疑问的地方欢迎留言,我看到后都会回复。原创不易,如果你觉得本文写的还不错,对你有帮助,请通过【点赞】和【关注】让我知道,支持我写出更好的文章。我是囧辉,我的目标是帮助大家拿到心仪的大厂 Offer,我们下期见。推荐阅读
Java 基础高频面试题(2021年最新版)
Java 集合框架高频面试题(2021年最新版)
921天,从小厂到入职阿里
两年Java开发工作经验面试总结
4 年 Java 经验面试总结、心得体会
5 年 Java 经验字节、美团、快手核心部门面试总结(真题解析)
面试必问的 Spring,你懂了吗?
如何写一份让 HR 眼前一亮的简历(附模板)
面试阿里,HashMap 这一篇就够了
面试必问的线程池,你懂了吗?
BATJTMD 面试必问的 MySQL,你懂了吗?
如何准备好一场大厂面试
跳槽,如何选择一家公司