我在大公司干活前,基本都在小公司之间辗转,对比两种公司的经历,切身感受到“人往高处走“绝非是空话。我在之前的博文里,多次讲到程序员该去大厂看看,在这篇博文里,将结合我和我朋友的所见所闻,从技术和发展前景等方面,综合讲述小公司和大公司里程序员的普遍差别,以此再让大家感受下大公司经历的重要性。不过本文不是停留于此,还更将针对小公司干杂事的程序员,给出逆袭到大厂的若干建议,好正文开始。
1.五年后,两类程序员技术上的差距
从毕业到工作5年,如果程序员一直在小公司干,如果再不注意积累,可能顶天了也就是个熟练工,熟悉本公司的业务,来了新需求,能很快地完成功能并交付测试,如果一个公司呆久了,可能再循例升级到组长或项目精力,带一帮人完成功能业务,或者再凭借良好的人际关系,高效地和其它组交流。
也就是说,在小公司里干,时间可能更多用在重复性的实现业务上。从技术角度上来讲,和刚毕业的人相比,可能是会知道一些项目开发的坑,也可能会多用些项目管理的工具,项目开发的经验可能也相对丰富些。但熟练工嘛,可替代性太强,或许上点心的毕业生,工作个1年也就能达到熟练工的水准了。
但如果程序员毕业后一直在大公司里干,5年后,如果上进些,技术层面应该掌握不少值钱的技术,比如大数据,分布式组件或云端部署,从经验角度,可以调试和排查组件底层的问题,从运维角度,至少能在Linux部署组件,这种人如果继续在大公司里深造,晋级到资深架构指日可待,如果这个时候去小公司,做个技术主管问题应该也不大。
话不能说绝对,在大公司里混得很惨的人也有,在小公司里不断上进,最后实现财务自由的人也不少,但这里就有个概率问题。相对而言,大公司员工普遍要比小公司员工能力更强,从而挣的钱也就更多,这也是为什么很多人要去大公司的原因。
2.技术视野上,两类程序员不能相提并论
为什么大公司里的员工发展前景要好呢?因为大公司的业务量大,所以用的技术更值钱,里面的员工有足够多的机会积累值钱技术的项目经验,而且大公司牛人多,通过和这些大神的交流,第一技术发展的视野就更宽广,第二自我探索的试错成本也会低很多。
相对而言,在小公司里,可能更看重实现业务,而并发量等指标相对很低,而且小公司未必有足够的试错空间,所以小公司的员工可能在平时开发过程中未必能直接实践分布式,机器学习,数据分析和云端的技能。如果小公司的员工要自己学,限于接触的技术面,可能就需要更多的时间来尝试了。
这我有亲身经历,之前在小公司,也就部署个SSM,外带些java+JDBC的功能,只求功能没毛病。我在小公司的时候,也能算不断上进,但也就深挖个Java核心方面的底层代码,或者在数据库方面也就探索个诸如执行计划等的单机版的优化方式,这些有用,但仅仅算最基本的技能。
但在大公司里,接触的都是分布式部署,产线上需要上万并发量,性能优化就不提了,平时动辄调试产线dubbo, netty, mycat等问题,而且查问题时需要进入到dubbo等底层代码,平时还有大神定期分享热门知识点,可以这样说,比起大公司的视野,我在小公司里就像井底之蛙。
或许这不是个例,我平时在面试过程中,发现有大公司背景的候选人综合能力普遍要比只有小公司经历的要强,而一些30岁以上并且只有小公司经历的候选人,大多竞争力都退化了。
3.小公司动荡的概率比大公司的高
程序员在刚毕业的几年里,可以频繁跳槽,但到了30岁,就应该稳定下来。这里的稳定绝非是不拥抱变化,更不是混吃等死养老,而是要稳定的在一个公司的岗位上不断积累技能和经验,然后想办法提升到架构师或技术专家。
但一些小公司可能没法做到这点,比如业务线变更,或者组织架构调整,甚至各种原因公司倒闭,或许有时候不是程序员的原因,但频繁遇到这种变动的话,程序员可能每次都得从零开始接触业务和技术,如果每次技术面都不同的话,那么何来经验积累?要知道,架构师和技术专家乃至CTO,都是需要靠时间沉浸的。
我在面试的时候,见到不少30岁以后的程序员,最近3年里不断在一些小公司间辗转,他们也是一脸无奈,告诉我各种原因,比如公司爆雷了,或者业务线被卖了。如果原因合理,不会质疑候选人的稳定性。但如果本招聘岗位需要Spring Cloud 5年经验的,候选人在不断变动中,Spring Cloud只有3年经验,如果再因积累经验过少而没法回答出一些深层问题,那么就很吃亏了。如果年纪再大些,或者还只能继续在小公司里碰运气。
4.从挣钱上看,大公司的程序员没上限
技术不能当饭吃,所以这里就直接些,从挣钱角度分析小公司和大公司间的差别。
小公司的程序员,干了若干年后,工资上升的幅度就非常有限了,顶多一年加个几百。老板不傻,这些人干的活和新毕业生差不多,顶多经验丰富些,干活快些,而新员工因为没有家庭等负担,还能加班。而且老板也知道,这些人因为竞争力退化,跳槽风险很低,哪怕走了,找个能替代的员工就行了。所以老板敢压低工资。
而在小公司里,拿高工资的,一般都是老板从大公司里请来的,在小公司里凭能力提升到高级岗位的,不能说没,但很少,一般途径都是先到大公司镀个金,然后再到小公司做个技术主管。
但如果在大公司里,哪怕到了30岁以后,见过世面的程序员比比皆是,而且大多能独当一面,虽然不能说无可替代,但哪天这些程序员只要高兴,或者再凭经验到其它大公司,或者到小公司里做技术,或者干脆就找个外企养老。所以大公司里工资增加的幅度一般不会低,而且经过大公司栽培后,也比较容易升级到架构师,到了架构师级别,工资就更没上限了。
觉得文章不错就给小老弟点个关注吧!加入我的个人粉丝群(Java架构技术栈:644872653)即可领取一份Java面试宝典《Java核心知识点整理.pdf》和《Java208道面试题(含答案)》喔!
网友评论