小公司的Java程序员与BAT蝙蝠侠们的真实差异
这个问题其实可以看成是大公司和小公司的差别。
程序员有一个很重要的成长路线,就是看你做过哪些项目。
大公司的好处就是,他有自己的场景,有自己的需求,有自己更进更深一层的技术动力。
小公司大部分都只是在实现业务逻辑,而不注重代码质量,维护的可读性,自动化程度,文档规范,负载压力,用户体验。
要求不一样,直接导致对于工程师的期望不一样。
所以本质上来说,把你放在那个BAT的岗位上,给你提出各种性能和复用程度上的需求,你未必做的比他们差,当然也有很大的可能是你做的比他们差很多。
打个比方,大公司的系统,动辄日均百万千万的pv,再小的问题,也很容易快速地暴露出来,问题多了,自然就形成了经验,经验多了,自然就形成了规范。
一般大公司的项目流程是这样的:
立项阶段
1、需求立项和评审(确保需求正确,无业务逻辑漏洞)
2、测试用例评审(确保测试能够覆盖所有的场景)
3、技术方案评审(确保技术逻辑无误)
开发阶段
4、代码review(确保代码质量)
5、开发提测(已完成业务功能,等待测试验证)
6、冒烟测试(验证基础功能无明显错误,若有则打回)
测试阶段
7、功能测试(基于测试用例和业务场景的全覆盖测试)
8、回归测试(代码合并到master分支后,在比较正式的线下环境测试)
发布阶段
9、预发布测试(在线上真实环境测试,此时用户还是看不到的,但数据是线上环境的真实数据)
10、生产验收(用户可以看到了)
整个项目的生命周期中,测试占了绝大部分,在真正经过时间考验之前,早已被人轮番蹂躏过了无数次。
你说这样一套下来,质量不过关的还能活么?
大公司的开发人员,每次都在经历这些东西,踩过的坑早已熟透于心,所以他能指出你的问题,是因为他经历过,思考过。
下面的技术体系是跨越架构师的一道分水岭你都能掌握吗:
Java高级架构二群688583154
进群:学架构知识体系进BAT毫无压力
进群:可以领取免费的架构师学习资料。
进群:了解最新的学习知识点
进群:了解最新的阿里,京东招聘资讯
进群:获取更多的BAT面试资料