最近部门招聘,很多工程师,包括我在内都参与了内推和面试的过程,经过这次招聘,我发现能够最终拿到offer的人,基本上在看到简历的那一瞬间就已经定下来了,后续的面试只不过是一种验证而已(注意,是验证,而不是走过场),除非你面试过程中犯错误,或者你不想来,否则,那个offer一定是可以拿下的。
那些拿下offer的人,基本上都有这么一些特征
1. 学校不错,一般都是985,211,如果学校一般,那么你下面的2和3满足的话,问题也不大。
2. 之前三年工作经验,都是在业内有些名气的企业,比如百度,IBM,腾讯,思科等等。国内的软件企业的工作经验往往认可度不高,甚至远远不如一些拿到了风投的创业企业的认可度高。当然,如果一家号称在创业的企业,却没有任何人投资,基本上也不要想得到认可了。
3. 职位级别,基本上都达到了高级工程师/高级测试工程师, Senior xxx Engineer的级别
4. 之前工作经验和当前职位要求都匹配,比如岗位要求Java的,候选人之前也是用Java的,岗位是iOS/Android的,候选人之前也是干这个的
但是,满足前面4点,三年经验也只能保证你能有P6的评级,不一定能保证P7的评级,那么,如何才能评到P7呢?以笔者观察到的案例,是否P7一条最关键的就是你是否业内有知名度。
之所以提到知名度,源于笔者认为,这一条对于候选人来说最容易提升,否则,你和现有的阿里的工程师去拼JVM实现,MySQL优化,毫无优势,面试官有什么理由给你那么高评级呢。
那么,如果我要拿P8呢?郑重的提示读者,如果你亲自拜读了这篇博文,并且觉得收获匪浅,那么你肯定还没达到P8的要求,因为笔者所见的P8,在业界知名度,综合能力方面,都已经超越了我言语所能描述的地步,我这篇文章,对于他们来说,一点价值都没有。这种修养,绝对不是三到五年就能熏陶出来的。
再看看p8到底是个什么样的存在
P8,通常是一线Team leader或者二级域架构师,需要对一个领域的业务非常熟悉并且能够将影响力辐射到其他合作团队。
而P7是能力的代表,不是工作时间的代表。但是常规来讲,研究生5-6年以上应该要达到P7,注意P7是技术专家。
一般来说一些业务架构、应用架构、产品功能决策、技术选型、协作分工等问题应该在P8层次终结。P8是一线作战的小队长,向下提供决策,向上提供有效的信息。
有两种p8,一种是管理类型的,一种是业务类型的,前者其实是阿里最需要的,因为公司到了一定规模后管理最重要,这类p8要非常符合公司价值观,能坚定不疑的跟党走,听党指挥能打胜仗,而且往往在阿里很多年,思想上符合组织对管理者的要求,但是也有缺点就是经常不敢决策不作为,虽然价值观正确听话,但是因为丰厚的待遇和长期在阿里见到了各种潮起潮落和人事变动,所以缺乏冒险和拍板的精神。
那我们今天回过头来看P7的整个的知识一个大体系,一共有以下几点
找到正确的学习路线
一、构成架构师的技能体系
二、阅读源码,分析源码知识点总汇
这张图详细介绍了源码中所用到的经典设计思想及常用设计模式,先打好内功基础,了解大牛是如何写代码的,从而吸收大牛的代码功力。
结合Spring5和MyBatis源码,带你理解作者框架思维,帮助大家寻找分析源码的切入点,在思想上来一次巨大的升华。
三、分布式架构
有了大牛的代码功底之后,接下来可以更好地学习分布式架构技术。
透彻理解分布式架构的好处和优点
必然性,适应市场需求,能够去找一些更大的平台发展,提升自己的综合技术能力和薪资。
了解从传统架构到分布式架构演变过程所带来的技术变革,将理论和实战相结合,透彻理解分布式架构及其解决方案。
从分布式架构原理,到分布式架构策略,再到分布式架构中间件,最后在加上分布式架构实战,让程序员可以在技术深度和技术广度上得到飞跃的提升,成为互联网行业所需要的T型人才。
四、微服务架构技能总汇
随着业务的发展,代码量的膨胀和团队成员的增加,传统单体式架构的弊端越来越凸显,严重制约了业务的快速创新和敏捷交付。为了解决传统单体架构面临的挑战,先后演进出了SOA服务化架构、RPC框架、分布式服务框架,最后就是当今非常流行的微服务架构。微服务化架构并非银弹,它的实施本身就会面临很多陷阱和挑战,涉及到设计、开发、测试、部署、运行和运维等各个方面,一旦使用不当,则会导致整个微服务架构改造的效果大打折扣,甚至失败。
五、并发编程
从Java基础接触多线程,到分布式架构环境下的高并发访问,并发编程充分利用好各个服务器处理器,以最高的效率处理各个任务协同有序工作。透彻理解锁的应用
六、性能优化
大家都知道,性能一直是让程序员比较头疼的问题。当系统架构变得复杂而庞大之后,性能方面就会下降,如果想成为一名优秀的架构师,性能优化就是你必须思考的问题。
所以性能优化专题从JVM底层原理到内存优化再到各个中间件的性能调优,比如Tomcat调优,MySQL调优等,让你洞悉性能本质,全面认识性能优化,不再只是旁观者。
七、Java开发必知工具
一名优秀的架构师必须有适合自己的兵器,也就是工欲善其事必先利其器,不管是小白,还是资深开发,都需要先选择好的工具。工程化专题的学习能帮助你和团队提升开发效率,让自己有更多时间来思考。
Git:可以更好地管理你和你团队的代码。
Maven:可以更好地管理jar包和项目的构建等。
Jenkins:可以更好地持续编译,集成,发布你的项目。
Sonar:一个开源的代码质量分析平台,便于管理代码的质量,可检查出项目代码的漏洞和潜在的逻辑问题(提升代码的质量,更加高效地提升开发效率)。
八、实践一个双十一电商项目
电商项目目的是把所学的分布式,微服务,性能调优等知识运用起来,只有在项目中你才能巩固知识,提升自己。实践电商项目会利用云服务器搭建真实的开发和部署环境,让你从零到项目实战,体验真实的企业级项目开发过程,让你具备独立开发和搭建分布架构系统的能力。
总结
要想有机会,首先你得从人群中冒出来,要想冒出来,你就必须做到与众不同,要做到与众不同,你就要做得更多! 成为技术大牛梦想虽然很美好,但是要付出很多,不管是Do more还是Do better还是Do exercise,都需要花费时间和精力,这个过程中可能很苦逼,也可能很枯燥,这里我想特别强调一下:前面我讲的都是一些方法论的东西,但真正起决定作用的,其实还是我们对技术的热情和兴趣!扫码添加小助理获取!
!
高清架构技术视频教程
BAT 面试攻略
架构技术书籍
年薪50W看似不多,可自己不努力一把怎么知道自己的极限在哪呢?工作年限,年龄,公司大小仿佛这些东西限制了你的发展。可自己都不主动往上爬,你又凭什么比别人优秀?