zoukankan      html  css  js  c++  java
  • 一个只有1年经验的Java程序员,面试16K的外派支付宝,你们说能过吗?

    他仅仅是个Java1年经验,面试16K的外派支付宝,你们说香吗

     

    他的情况介绍,双非一本,19年毕业,计算机专业,只过四级,刚刚一年经验,他把他的支付宝外派面试经验分享出来了,还有他的一些学习资料,也都整理出来发给我了,需要的朋友可以私信【电子书】即可!

    一面是软通技术面

    跟HR沟通的时候我说算了算了,阿里的线上面试还是有难度的,毕业一年以我的能力怕是外派去不了的。然后她就一直一直要我简历,我一想,反正不花钱,试一试嘛。

    (当时我还在公司上班,我是骑驴找马型的,也没提前约时间,就跑到楼梯间里去)

    1、分布式

    问的还是挺多的。SpringCloud 的框架都点了,还有阿里最新的一套,Nacos,Sentinel做服务熔断限流降级持久化到数据库,分布式事务(TC二阶段提交)。分布式事务的其他解决方案也没有问。

    2、JVM (问的最多)

    类加载机制,沙箱安全,这些都问。然后问运行时数据区,我答漏了一个程序计数器。

    他就接着提问程序计数器,真被自己蠢到了。

    然后问可达性分析,什么样的对象可以作为GcRoot、加载的时候把这些对象提前找好用的OopMap。

    OOM,StackOverFlow,垃圾收集算法,垃圾收集器(G1),记忆集。

    新生代几次对象几次到老年代?(15)

    有没有可能直接把刚new出来的对象放在老年代?(第一次遇到这个问题,我就说觉得有可能,毕竟有些垃圾回收器会有一个空间分配担保策略。)

    后面我去查了一下资料,直接把对象new 在老年代的情况还是比较多的。我说的那个是其中一种。

    3、多线程(问的也超级多)

    volatile,CAS,总线嗅探,CPU缓存一致性协议

    ReentrantLock、ThreadLocal、Lock和Synchronized的区别,CountDownLatch,ABC三个线程怎么去保证顺序执行?

    (多线程我就是那种理论还行,实操渣渣的那种,毕竟业务系统,阿西吧,都是泪啊)

    4、数据库优化

    刚巧就是前一天写的博客,全问了。真就超级巧。B+树,Hash索引,最左前缀,索引优化分析,一条龙服务,都问了一下。

    5、Redis

    一来就是分布式锁,不逼逼的那种。然后别的就没问了,可能也是觉得我回答的还行就跳过了。

    6、基础

    没想到我上面的回答的还可以,但是在基础题上却回答个稀烂

    HashMap:我直接答错了,他问扩容的触发条件是什么,我说只是一个达到负载就扩容了。他告诉我是:负载和Hash冲突同时发生。这个我真不知道。

    final 修饰一个变量String 怎么去改,我说改不了,他说用反射。我也不知道。

    final 修饰一个对象Person,能不能去改对象的属性 (问到这里我就猜到 final是仅仅不能改引用的地址,至于引用里面是什么,就可以随便改了)然后他给我讲了一下。

    上面两个基础题答的稀烂,另外有几个问了是真不知道:

    死锁怎么排查?

    JVM调优什么做?

    explain + sql 后面的列表都表示什么含义?(我是真的忘了,只记得文件内排序和临时表了)

    面试官一般nice,不会的会给你提示(比如我答漏了一个程序计数器),也会给你讲清楚。

    电话面试,整个过程接近一个小时。

    二面阿里技术官面

    整个过程40分钟。

    场景题偏多。

    1、自我介绍,直接技术栈

    自我介绍很重要,围绕四个点去说。(自报家门,项目经验,技术栈,求职愿望)

    因为你不知道这次面的是技术还是HR,所以多带一句类似这样的话:

    我一直在对照行业内普遍的招聘要求去学习,对分布式,jvm,redis.....比较了解

    也一直很想去像你们XXX这样的互联网公司历练自己,希望能加入你们的项目组。

    (也不多,就10几秒钟就说完,不耽误其他的表达)

    2、HashMap & ConcurrentHashMap

    这可以说是面试必问啦。抓住机会,把知道的多说一点,哈哈哈。

    3、数据库连接池

    我真就只知道一点点皮毛,连接复用,用durid(阿里的 Druid 数据库连接)倒是用的多。但是生成上参数怎么配的不知道,连接数不够了怎么办不知道......

    4、Spring和SpringBoot的区别

    基础题。也是抓住机会,好不容易一个知道的,赶紧多说一点。

    5、输入一个网址之后发生了什么?

    对于我这个网络渣渣只知道域名要去DNS解析,找到ip,然后才进到后台端口服务。但是这个过程肯定要经历各种代理和负载均衡的调度。之后就是查数据库返回。所以我答个稀烂。

    6、数据库查询慢你怎么分析?

    常规,把知道的说出来就行。慢查询日志,找到sql,用explain分析,对照索引看看建的怎么样。如果急用的话那就强制走一个,不急的话那就慢慢优化索引结构呗。

    7、问了几个索引题。

    字符串要写单引号,字符串查询怎么增加查询效率,字符串索引太大了那就截取几个做索引,叫前缀索引。怎么判断一个索引字段选的好不好,看不重复的和总数的比值,越大越好。

    8、假如现在系统里面就是要模糊匹配怎么办?

    就是要做字符串的搜索,怎么办?我只想到一个ElasticSearch。

    然后说了说ES可能不实时,因为要借助其他工具进行同步(logstash),然后问了几个概念。

    唉,也忘记掉了,没答好。

    9、大数据了解吗?

    只看过一点Handoop,把HDFS文件系统做存储,MapReduce做计算说了一下。

    后面那些就真不知道了。hasdoop的都快忘没了,没必要不懂装懂。

    阿里的面试,场景题很多,考察的也是知识的广度,面对问题的解决方案和思路。但是只要问到一些点上面,面试官就知道你是什么水平了。回答的不好也会说没关系的下一个。面完我的感觉就是没了。然后打算好好补充一下基础知识。

    HR面

    直接就说阿里那边的面试通过了。我也知道那肯定是有了,外包只要面过了就只希望你去就好了。

    问我期望薪资,我就说16K。很爽快的就同意了。然后问我有什么想问的。

    其实没什么了啊,我觉得我这样的情况,毕业一年,16K,差不多可能已经到头了吧。不比现在拿6K多点好么?

    当时其实不是很激动,楞了一下。她说:别的不了解一下么?

    ......

    其实大家都懂的,外派大厂,吃住自理,五险一金交的也不是很高,年终可能就看心情给,晋升那就看自己表现了,或者就没有晋升好吧。大多数情况下,外包去大厂那就是就是作为一个跳板吧。环境氛围会驱使自己学更多的东西,那下一次跳槽,就比较理想了吧。

    乙方......

    实习的时候在银行的时候是乙方,毕业了去烟草行业也是去做烟草的乙方......

    那去吗?

    大概率是会去。看看我这1年经验的条件,再看看18年后毕业勿扰的岗位要求,去!

    面试总结

    这是我自己整理的一些技术板块在面试中常问的面试题,现在把自己的经验分享给大家,需要的可点击这份《Java面试BAT通关手册》即可!

    自己这几个月面了好多家吧,整理下来最容易问的知识点:

    一、Java基础

    面向对象,final,HashCode,HashMap,ConcurrentHashMap,集合框架。

    他仅仅是个Java1年经验,面试16K的外派支付宝,你们说香吗

     

    二、Spring社区

    IOC思想,创建过程,Bean生命周期,三级缓存搞定循环依赖,AOP倒是问的少

    SpringMVC流程(经典面试题了)

    他仅仅是个Java1年经验,面试16K的外派支付宝,你们说香吗

     

    三、分布式微服务

    路由,网关,调用,负载,配置,熔断限流降级

    阿里最新的组件也常问,Nacos,Sentinel,Seata

    (Seata是一种二阶段提交解分布式事务的办法,还有很多,常用的还有补偿,尽最大努力通知)

    那么分布式锁也要准备一下了(Redis,Zookeeper)

    雪花算法 分布式唯一ID 生成器

    他仅仅是个Java1年经验,面试16K的外派支付宝,你们说香吗

     

    四、Redis

    我觉得它就是一个万金油,使用场景也是常问的。

    缓存,分布式锁,缓存雪崩击穿穿透这三兄弟,以及对于的解决办法,数据类型,持久化策略,高可用策略,主从,哨兵

    再深入的话就把数据结构看了

    五、数据库

    Mysql高可用,索引,B+树,哈希索引,聚集索引,联合索引,前缀索引,三星索引,索引失效

    数据表水平垂直拆分,拆分之后怎么做查询,慢查询分析,索引失效的情况,回表是什么意思,随机IO和顺序IO,explain的输出列是什么意思

    他仅仅是个Java1年经验,面试16K的外派支付宝,你们说香吗

     

    六、多线程

    volatile问的最多,synchronized反而不是很多

    AQS和聚合了这个同步器的锁。

    公平锁,非公平锁,偏向锁,分段锁,可重入锁......

    七、JVM

    推荐看两遍《深入理解Java虚拟机》周志明的最新版,看完就基本能回答面试的提问了

    他仅仅是个Java1年经验,面试16K的外派支付宝,你们说香吗

     

    八、网络

    我这个计算机网络渣渣只能说起码 三次握手和四次挥手要知道吧

    还有就是一些场景题,多去看b站上面的面经,看看别人是怎么问这些问题的,该怎么回答。

    数据结构和算法,多练。

    贪多嚼不烂,慢慢积累消化。

    他仅仅是个Java1年经验,面试16K的外派支付宝,你们说香吗
  • 相关阅读:
    八数码难题 (codevs 1225)题解
    小木棍 (codevs 3498)题解
    sliding windows (poj 2823) 题解
    集合删数 (vijos 1545) 题解
    合并果子 (codevs 1063) 题解
    等价表达式 (codevs 1107)题解
    生理周期 (poj 1006) 题解
    区间 (vijos 1439) 题解
    区间覆盖问题 题解
    种树 (codevs 1653) 题解
  • 原文地址:https://www.cnblogs.com/xiaoyusheng/p/13510262.html
Copyright © 2011-2022 走看看