零. 废话打头

  好快啊,不知不觉,毕业了2个月,这也就意味着入职2个月了,4年前,从西南跑到东北,此时又从东北转移到帝都,哈哈,总是异乡人。

  写这篇博客,主要是总结一下入职2个月的感悟,要说感悟吧,还真没多少,倒是有挺多牢骚的,莫怪!!!

 

一. 身份转换挺重要的  


  我之前在一家公司实习将近一年,毕业时,我就在想,就算反射弧再长,也应该完成身份转换了吧。真是这样吗?NoNoNo,实习生能接触的项目什么样的?重要性如何?出了问题谁负责?总之一句话,一般来说:实习生不会接触比较重要的工作,不重要的工作,即使出问题,也不会有多大问题,而且出问题后,一般是导师承担责任,而实习生一般只是被开除而已。


  这个身份转换吧,还是挺重要的,毕业前是学生,毕业后就是“社会人儿”了,也就意味着,需要对承担自己所做事情的后果,当然,学生也是需要承担的,只不过后果是不同的。

  毕业前,大家可能会因为你是“学生”而对你有所包容,但是毕业后,就没有人有义务去包容你(除了你家人)。


  所以,毕业了,需要明白自己的职责,需要完成什么工作,如果完不成会怎么样,如果出现事故,又会怎么样,要对这些都有一个清晰的认识(可能有点严肃了,但这就是职场啊)

 

二. 不要妄自菲薄,也不要自以为是

  因为我是本科毕业就工作了,学校可能大家也没听过,就不提了(排名200开外)。


  去年秋招运气比较好,有幸进入某互联网公司(非BAT),员工很多北航、北邮、中科、清、北、电科大、武大...的员工,当然,也还是有和我一样的。入职培训的时候,发现大部分,大部分都是研究生,额,能想象吗?比如,我打听了一下旁边的人力资源(HR)和运营,我靠,居然是北理的硕士,我当时内心就在骂人:SB啊,一个HR要什么硕士学历,招一个本科,教一教,不也能做得挺好啊,招一个硕士得多花多少钱啊!!!但是后来也想通了,还是自己太年轻。

  其实当时我就挺自卑,感觉我骗了我的面试官,觉得能力不够,没法和这么一大帮牛人竞争。我自己想了好久,还是找了好多理由让自己平静下来:

  1、既然面试官给你了过,证明能力没问题或者说,身上有某些点吸引到了面试官;

  2、好学校毕业的不一定都是牛人,也有进外包的,也有找不到工作的,当然这是少数;

  3、学历的确是个问题,但是和工作并没有太多的关系,顶多在晋升的时候有帮助(会吗?),还得看能不能出活儿;

  4、既然身边很多牛人,嗯,根据近朱者赤,近墨者黑的原理,多向牛人学习,我也会越来越优秀。

  

 

三. 踏踏实实,莫好高骛远


  “高并发”,“高可用”,“高扩展”,“分布式”...这些词,对于做开发的来说,挂在嘴边,感觉挺高大上的,毕业前上B站,还有各大培训机构找了好多关于这些名称听上去就高大上的课程,看了一点之后,感叹,哇,好高深啊。


  但是,这些高大上的东西跟我这种初入职场,大项目没接触过,小项目不值一提的小白来说,只有几毛钱的关系,这几毛钱关系几乎可以忽略,因为,根本没我什么事,我只需要安安静静的写代码,练好基础语法,即使是很简单的功能,很low的页面,都要用心去做,打好基础,夯实基础,基础很重要,时机到了,自然会有一些现在觉得高大上,日后觉得平淡无奇的工作需要你去完成。


  为什么说基础很重要呢?这里我想说一下语言之争,比如“PHP是世界上最好的语言”,“所有的语言都差不多”,“Python实现一个功能只要5行”..........太多了,就不细数了,鄙人主要想说的是:

  1、某个语言是否好,与你无关,你也无权选择编程语言,因为你们的架构师会决定,如果不想用这种语言,可以选择跳槽,不过这个跳槽理由你的下家能接受吗??

  2、虽然很多语言在语法上很相似,但是他们的开发思路,编程思想是不同的啊,这个很重要!!!


  3、每一种语言都有自己的语言特点,比如Java8新增的Lambda表达式,你可以不使用这些特殊语法也能完成工作,但是,既然选择这种语言了,为什么不使用它的特性呢?为什么不用最适合的方式进行开发,达到最高效率呢?

 

四. 做事要靠谱

  凡事有交代,件件有着落,事事有回音。——真乃圣经


  当leader或者其他人交代了一个任务,一定要及时同步进展,有问题就提问题,不能解决就不能解决,一定要有一个答复。不要自己一鼓作气,蒙头苦干,遇到问题不反馈,总是自我激励说能解决,最终拖了工期,误了大事。


  有问题(不是白痴问的那种问题),如果真的解决不了(或者半个小时都没有思绪),一定要主动去问,不要怕同事会讨厌自己,如果不耐烦了,就换一个同事问(雨露均沾),如果同事真的表现出不耐烦,表现出来也没啥,前辈有义务帮助新人尽快接手掌握工作(原谅我满嘴胡言),但是一定要记得,问题问完后,一定要说谢谢!!!


  以我自己为例吧,之前实习的时候,有个同事让我帮忙做一个东西,我花了大概一周才做好,他对我做出的成果有点惊讶,隔了两三天,他就找我导师,说要把我调到他那边去(虽然我没去)。这个例子可能没多大说服力,但是让别人觉得你是靠谱的,别人可能就会多关注你一点,哪怕只是一点点。

  

五. 深度适可而止


  入职一个月的时候,leader让我们小组的新人看JDK源码,比如ThreadLocal,ConcurrentHashMap的源码,然后做分享(感觉挺费事的)。

  对于“深度”这个东西,额,我目前的态度:先会用,再根据需要,有选择性的看源码。


  阅读源码是一个很好的学习方式,几乎每一个开源项目的代码量都挺多,几乎不可能看完一个开源项目的所有代码,所以有目的性地读源码,比如说Spring的IoC、AOP,而不是说,我要读完Spring的每一行代码。

  另外,有些问题的确是需要查看源码才能发现根源所在,才能解决问题。

  

五. 要有沉淀

  入职2个月,即使我是做开发的,每天也会写很多的文档:

  1、学了某个技术,需要写学习笔记(即使到处都能搜到,但还是需要自己写);

  2、今天做了什么,需要发日报、周报邮件,写文档;

  3、工作主要的流程,问题,解决方案,每一项都需要单独输出文档

  4、开发过程有新想法,需要记录一下,写文档;


  我问导师,为什么要写这么多只有自己看,也许自己都没心思看的东西呢?导师给我说,大公司有个毛病,繁文缛节比较严重,习惯就好。还让我仔细记,因为你干了什么事情,口说无凭,没人去看你的代码,你唯一能拿出的就是文档,如果有人质疑你的工作时,可以将文档发给他;另外,多梳理文档,对于个人的写作也有锻炼,晋升的时候,也需要很多文档佐证,总不能晋升的时候再加班补文档吧!!!

 

六. 学习新技术

  这个学习新技术并不是说利用空闲时间学一门技术,然后转到那个技术,而是说,目的是了解,而不是深入学习:

  1、比如了解一个现有技术的可替代方案,比如大家都已经见怪不怪的Restful,有兴趣可以了解一下GraphQL;

  2、比如开发人员也可以了解深度学习,跑一下demo代码,不需要了解底层,只需要了解大概原理。


  并不是说只有深入探究才叫学习,浅尝辄止也可以是学习,当了解一些新技术的时候,如果未来刚好碰到一个场景,可以用到之前了解的新技术,那时候在深入了解,岂不美哉。

 

七. 一定要早睡

  大家都知道的道理,“前半生用生命换钱,后半生用金钱换命”,现实是,一旦出意外,可能就没后半生了,哈哈哈,一定要注意身体啊。

 

总结

  没啥好说的,“傻人有傻福”,现阶段,leader让我干啥,我就搞啥,老老实实写代码,静静耕耘,期待更出色的自己。

  如果大家有什么看法,欢迎评论^_^  ^_^

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信