Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >半个月拿下offer,只因做了这些

半个月拿下offer,只因做了这些

原创
作者头像
java爱好者
修改于 2019-07-09 03:34:18
修改于 2019-07-09 03:34:18
8200
举报
文章被收录于专栏:java架构1+1java架构1+1

最近部门招聘,很多工程师,包括我在内都参与了内推和面试的过程,经过这次招聘,我发现能够最终拿到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,都需要花费时间和精力,这个过程中可能很苦逼,也可能很枯燥,这里我想特别强调一下:前面我讲的都是一些方法论的东西,但真正起决定作用的,其实还是我们对技术的热情和兴趣!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
30个类手写Spring核心原理之Ioc顶层架构设计(2)
Annotation的代码实现我们还是沿用Mini版本的,保持不变,复制过来便可。
Tom弹架构
2021/12/10
4840
实战|如何优雅地自定义Prometheus监控指标
大家好!我是"无敌码农",今天要和大家分享的是在实际工作中“如何优雅地自定义Prometheus监控指标”!目前大部分使用Spring Boot构建微服务体系的公司,大都在使用Prometheus来构建微服务的度量指标(Metrics)类监控系统。而一般做法是通过在微服务应用中集成Prometheus指标采集SDK,从而使得Spring Boot暴露相关Metrics采集端点来实现。
用户5927304
2021/04/14
2.1K0
源码学习系列之SpringBoot自动配置(篇一)
ok,本博客尝试跟一下Springboot的自动配置源码,做一下笔记记录,自动配置是Springboot的一个很关键的特性,也容易被忽略的属性,因为这个属性被包括在@SpringBootApplication注解里,所以不去跟一下源码都不知道还有这个属性,ps:本博客源码基于SpringBoot1.5.7版本
SmileNicky
2019/11/04
4820
Spring高手之路10——解锁Spring组件扫描的新视角
首先,我们将探讨一些Spring框架中IOC(Inversion of Control)的高级特性,特别是组件扫描的相关知识。组件扫描是Spring框架中一个重要的特性,它可以自动检测并实例化带有特定注解(如@Component, @Service, @Controller等)的类,并将它们注册为Spring上下文中的bean。这里,我们会通过一些详细的例子来阐明这些概念,并且展示如何在实际的代码中使用这些特性。
砖业洋__
2023/07/28
9820
Spring高手之路10——解锁Spring组件扫描的新视角
微服务架构学习Day01-SpringBoot入门
激活指定Profile: 1.在主配置文件application.properties中指定激活:
攻城狮Chova
2022/01/22
2980
【Spring注解驱动开发】使用@ComponentScan自动扫描组件并指定扫描规则
作者个人研发的在高并发场景下,提供的简单、稳定、可扩展的延迟消息队列框架,具有精准的定时任务和延迟队列处理功能。自开源半年多以来,已成功为十几家中小型企业提供了精准定时调度方案,经受住了生产环境的考验。为使更多童鞋受益,现给出开源框架地址:
冰河
2020/10/29
6460
微服务架构之服务框架Dubbo-注解配置剖析
我们再进入到DubboComponentScan.class去探索,发现还是个注解,真正的实现是DubboComponentScanRegistrar.class,而它是实现了ImportBeanDefinitionRegistrar接口的
公众号_松华说
2019/07/16
7500
Java 注解
JDK 5.0 开始, Java 增加了对元数据的支持, 也就是 Annotation(注解) 安闹太湿~
Java_慈祥
2024/08/06
1390
Spring Boot 3系列之-启动类详解
Spring Boot是一个功能强大、灵活且易于使用的框架,它极大地简化了Spring应用程序的开发和部署流程,使得开发人员能够更专注于业务逻辑的实现。在我们的Spring Boot 3系列之一(初始化项目)文章中,我们使用了Spring官方网站生成的Spring Boot项目作为示例。在该项目中,我们可以找到一个名为XjdocApplication的启动类,它是Spring Boot应用程序的入口点。本文将详细解释这个启动类的作用和功能。
修己xj
2023/11/06
4650
Spring Boot 3系列之-启动类详解
【一起学源码-微服务】Feign 源码一:源码初探,通过Demo Debug Feign源码
上一讲深入的讲解了Ribbon的初始化过程及Ribbon与Eureka的整合代码,与Eureka整合的类就是DiscoveryEnableNIWSServerList,同时在DynamicServerListLoadBalancer中会调用PollingServerListUpdater 进行定时更新Eureka注册表信息到BaseLoadBalancer中,默认30s调度一次。
一枝花算不算浪漫
2020/01/13
9530
【一起学源码-微服务】Feign 源码一:源码初探,通过Demo Debug Feign源码
@ComponentScan原理分析
这是@ComponentScan的官方介绍,大致意思就是扫描注册bean的一个注解,会扫描对应路径下被@Component标注的类,和xml方式的<context:component-scan>作用相似,常用的方式是basePackages方式。
叔牙
2022/01/04
8890
@ComponentScan原理分析
就想搞明白,component-scan 是怎么把Bean都注册到Spring容器的!
你经历过618和双11吗?你加入过大促时候那么多复杂的营销活动赚几毛钱吗?你开发过连读明白玩法都需要一周但只使用3天的大促需求吗?有时候对于有些产品的需求真的是太复杂了,复杂到开发、测试都需要在整个过程中不断的学习最后才可能读懂产品为啥这样的玩,要是一个长期的活动可能也就算了,培养用户心智吗!但这一整套拉新、助力、激活、下单、投保、领券、消费、开红包等等一连串的骚操作下来,如果在线上只用3天呢,或者是只用1天,那TM连参与的用户都没弄明白呢,活动就结束了,最后能打来什么样好的数据呢?对于这样流程复杂,估计连羊毛当都看不上!!!
小傅哥
2021/07/28
6870
就想搞明白,component-scan 是怎么把Bean都注册到Spring容器的!
将Bean交给Spring容器管理的几种方式
所谓IoC,对于spring框架来说,就是由spring来负责控制对象的生命周期和对象间的关系。
JanYork_简昀
2022/10/28
9200
将Bean交给Spring容器管理的几种方式
Spring Boot - 自动装配中的不可忽视的@Import
在使用 Spring Boot 时,@Import 也是一个非常常见的注解,可以用来动态创建 Bean。
小小工匠
2021/08/17
1.7K0
Spring Boot - 自动装配中的不可忽视的@Import
分布式系列接口调用openfeign小试牛刀---解读源码告诉你为什么接口可以直接注册到spring容器中
关于分布式我们之前主要集中讨论了服务治理。eureka、consul、zookeeper我们分别从三个角度不同程度的学习了这三个框架的原理及区别。这些作为前期springcloud的重要组成部分是我们学习分布式不容忽视的章节。至于现在springcloud alibaba我们这里重头菜要留到最后。对springcloud alibaba感兴趣还请关注我后续会更新相关内容
啵啵肠
2023/11/29
3700
Spring5参考指南:组件扫描
上一篇文章我们讲到了annotation-config配置,它主要用于bean内部的属性注入。而bean本身则需要通过配置的方式来定义。如果想使用配置的方式来定义bean,则可以使用component-scan,如下:
程序那些事
2020/07/07
6780
Spring源码学习笔记(7)——使用@Import导入组件
@Import注解的作用是导入其他的配置类或者组件,等同于在applicationContext.xml文件中添加如下配置
张申傲
2020/09/03
7220
思尐-ChatGPT:你不懂可以来问我啊!
Hello,大家好,我是java小面。不知道大家有没有自己实现过一个注解来替换Spring原有注解的经历,有人说Spring不是有注解给你用吗?干嘛还要特地的去实现一个来替换呢?
灬沙师弟
2023/03/07
1990
思尐-ChatGPT:你不懂可以来问我啊!
《Spring 手撸专栏》第 15 章:万人之敌,通过注解给属性注入配置和Bean对象
你听过扰动函数吗?你写过斐波那契(Fibonacci)散列吗?你实现过梅森旋转算法吗?怎么 没听过这些写不了代码吗!不会的,即使没听过你一样可以写的了代码,比如你实现的数据库路由数据总是落在1库1表它不散列分布、你实现的抽奖系统总是把运营配置的最大红包发出去提高了运营成本、你开发的秒杀系统总是在开始后的1秒就挂了货品根本给不出去。
小傅哥
2021/08/20
6230
《Spring 手撸专栏》第 15 章:万人之敌,通过注解给属性注入配置和Bean对象
Spring中Enable*功能的使用
@Enable** 注解,一般用于开启某一类功能。类似于一种开关,只有加了这个注解,才能使用某些功能。
zeody
2019/05/05
1.7K0
Spring中Enable*功能的使用
推荐阅读
相关推荐
30个类手写Spring核心原理之Ioc顶层架构设计(2)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档