先说结论。
1 应届生如果能去大厂那最好,否则赶紧得找个小公司积累入行的经验。
2 小公司不能久待,如果干了3年以上会成井底之蛙,一般干个2年左右就得打算跳槽。
2019年我去给过一家50人规模的小IT公司培训Java,当时和我打交道的技术总监,听到这个职位我不禁升起一股敬佩感。在这个班里,是总监带着他收下的10多号做IT的人来听,这些人里,有员工,也有开发经理。
经过我培训的感受,发现这家公司的员工平时也就是根据API做增删改查,其中能用搜索引擎查资料的算不错了,能看懂日志并根据日志排查简单java问题(就空指针之类,没到spring boot级,更没到分布式组件级),就算技术顶梁柱了。
而他们的经理也就是能查问题,能安排活,他们的技术总监和普通员工的差别在于,会把Spring Boot打成jar包,并部署到服务器,而且就开一个Spring Boot实例提供服务,然后会在服务器上部署些MySQL,仅此而已。
至于Redis,kafka等组件,我培训时他们当天书在听,我给出了用nginx做分布式部署方案,也就简单地做了几行配置,他们之前都没听说。
广大应届生朋友,大家可以想象下,其实在刚出校园的时候,大家的技术能力其实都差不多,但如果这种小公司待久了,可能到头还只是会做增删改查,估计会把“排查简单问题”都当成一种资深技能。
可能有人认为,小公司里用到的技能未必都这样简单,里面也有牛人。但结合我待过的多家小公司的经历,可能小公司里的牛人就是更熟悉些业务,更熟悉些API,以及能更快速地排查问题,一些大厂普遍用到的值钱技能,在一些小公司里可能听都没听说过。
然后我再说说大公司的情况。首先是技术栈全,由于公司规模大,什么项目组都有,java方面的,spring cloud, 分布式组件,还有大数据,有不同的组再用,我如果要了解,和对应的组员搞好关系就行。
而且从项目监控到部署以及其它方方面面,都有现成的解决方案,而对于任何问题,比如限流,熔断,分布式集群等,也都有看得到摸得着的。说难听的点,开发项目该遇到的坑,不同的组基本都踩了一遍,而且会形成文字案例让大家参考。
通过上述的对比,大家应该能直接感受到IT大公司和小公司之间薪资差距很大的原因。
至于应届生怎么进大厂,大家可以参考我下面的文字,这是我写的一篇文字,始发于博客园,目前被到处转载或抄袭,但原作者是我,大家可以从发表的时间来确认这点。
进大厂也就这回事,工作后2到3年进大厂操作指南 - hsm_computer - 博客园www.cnblogs.com/JavaArchitect/p/12665483.html
如下是原文。
//
在BAT这种大厂里,只要肯吃苦,技术和工资进步的速度会超出你想象,我在上海,按当前价格算,一般在大厂里干个三四年,好歹房子的首付应该能有,而且这种房子还不是太偏远太小的。
进大厂确实需要一定的实力,但如果单单技术好,没有其它的技巧,估计确实也有些难度。不过话说来,哪怕是二本出身,哪怕技术一般,只要肯上心加方法得当,工作后3年进大厂应该不是难事。在本文里,就将针对起点一般技术一般的同学,给出具体的进大厂操作指南。
1 先从战略上藐视,进大厂也就这回事
大厂里也有只有2,3年开发经验的初级开发,而且其中有些同学的学校可能也就是个二本,或许他们进大厂前,资历技术和你也差不多。甚至可以这样说,只要找到渠道去面试,外加适当的准备技巧,进大厂其实比进一些面试要求比较苛刻的小公司更容易。
就拿一些步骤来说吧,简历方面,只要有适当的分布式组件经验就至少能得到面试机会,面试时,当然如果光会增删改查当然不行,不过面试问到的题目以及提问的方式,网上多了去了,本文也会涉及,关键第一要适当看分布式