2019有赞面经,已拿offer(附答案和思路)
收藏

来自:大数据肌肉猿(微信号:BigData-BigMuscle)


以下为面试过程,因为该同学简历上的项目也是我提供学习的,所以下文的答案全部由我进行整理。



一面:(36min)


面试官人很好,问的比较细,但是我不会的地方会慢慢引导。


1、自我介绍


自我介绍可分为三层,第一层介绍基本信息;第二层介绍实习经历和项目经理及自己擅长的技术栈;第三层简单说下你的性格兴趣爱好等。自我介绍时间把握在1-2分钟,把自己的优势和擅长点讲出来。平时可以对着镜子多练练,讲的清楚比什么都重要。



2、java的集合看过源码么?HashMap?自己说了下jdk1.7和1.8的区别(说了头插和尾插,然后面试官问这个是基于什么考虑的?还有什么?答了链表数量大于8的时候会转成红黑数,然后问我了解红黑树么?为什么红黑树只有红色和黑色?)HashMap在多线程的情况下线程安全么?(答得扩容时出现,为什么?多线程已经出现了环,也就是死循环,去查找会出现什么情况?HashMap在扩容的时候允许其他线程去查找么【一个线程在扩容,另一个线程在查找】?)


3、链表常用的数据结构?ArrayList和LinkedList的区别?


Hashmap面试的信息量很大,面试官抛出一个点,往往希望面试者能较全面的去拓展回答。另一方面,数据结构的直接应用场景就是集合框架,所以集合框架的底层往往离不开数据结构。


4、介绍下计算机网络常见的7层模型或者TCP/IP模型?


参考:

https://blog.csdn.net/Yansky58685/article/details/98118124



5、HTTPS属于哪一层协议?和HTTP的区别?


应用层。区别参考:

https://blog.csdn.net/qq_38289815/article/details/80969419



6、进程之间的通信方式?


五种通信方式的介绍:

https://www.cnblogs.com/zgq0/p/8780893.html



7、使用Spring主要实现什么特性?Ioc和AOP?AOP怎么去实现的?为什么我写了个注解或者Spring的配置文件配置了就可以识别?延伸到代理模式(代理类和被代理类有什么关系)?适配器模式的区别?装饰器模式?


Spring知识点总结:

https://blog.csdn.net/lz1170063911/article/details/79772474


23种设计模式:

http://c.biancheng.net/design_pattern/



8、有什么想了解的么?


可以从公司情况出发。比如,您所在的组是做什么业务,用了哪些技术栈,接下去架构会怎么样去演变等等。



二面:(56min)


1、自我介绍


2、讲一下第一个项目?第一个项目里边涉及到数据加密和解密的过程,你们是怎么处理的?


项目中主要对用户的登陆密码和支付密码进行加密,把用户明文密码+用户ID作为MD5函数的参数,进行加密,确保唯一性。



3、电商平台的项目的架构图画一下?


业务架构


技术架构



4、Spring中AOP的动态代理?流程?


一面的第7题。



5、storm中怎么确保spout正确的传给下一个bolt即下一个bolt已经接收到?


从Storm如何保证可靠性传输的角度进行回答:
https://blog.csdn.net/echosilly/article/details/51674558



6、说一下Dubbo的架构?





Dubbo是一个分布式服务框架,以及SOA治理方案。其功能主要包括:高性能NIO通讯及多协议集成,服务动态寻址与路由,软负载均衡与容错,依赖分析与降级等。


它有5个节点,分别是Provider, Consumer, Registry, Monitor, Container。其中Provider是服务提供者, Consumer是服务消费者,Registry是服务进行注册和被发现的注册中心,Monitor是统计服务的调用次数和调用时间的监控中心,Container是服务运行容器。


他们之间调用的关系是:Container负责启动,加载然后运行Provider。Provider在启动时会向注册中心注册自己提供的服务,Consumer在启动时会向Registry订阅自己所需服务,此时Registry会返回Provider地址列表给Consumer。如果地址有变更,Registry会基于长连接推送变更数据给Consumer。Consumer会基于软负载均衡算法选一台提供者进行调用,如果调用失败,则再选一台。Provider和Consumer在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到Monitor。



7、说一下zookeeper的leader选举算法?


参考:

https://blog.csdn.net/zuochao_2013/article/details/82558592



8、redis作为缓存如何保证和数据库的一致性?


参考:

https://blog.csdn.net/qq_28740207/article/details/80877079



9、讲一下你实习的时候做的工作?通过我说的内容问了很多问题


这边别讲太多无关琐事,针对项目讲几点熟悉的点,把面试官往里面带。别让面试觉得你做了东西很多,但又很浅,但也别为了所谓的高大上,给自己挖坑。



10、了解辅助索引么?(说了聚簇和非聚簇)聚簇索引和非聚簇索引的区别?


参考:

https://www.cnblogs.com/qlqwjy/p/7770580.html



11、mybatis?


mybatis知识点:

https://blog.csdn.net/q957967519/article/details/82414366



12、springmvc的流程?


参考:

https://www.cnblogs.com/leskang/p/6101368.html



13、进程或者线程什么情况下发生死锁?


关于死锁:

https://blog.csdn.net/wljliujuan/article/details/79614019



14、说说可重入锁和读锁?读锁的底层原理是什么?(当时引申到了乐观锁和悲观锁)




三面:(38min)


1、自我介绍


2、我看你本科是一个普通的二本,研究生是985,你觉得你是怎么考上的?


3、当时选专业是自己选的么?为什么选计算机?你们班女生学计算机的有多少?


4、会不会觉得写代码很枯燥?


5、你觉得实习过程中的最大收获有哪些?


6、说下你的优点和缺点?你的老师是怎么评价你的?你周围的同学是怎么评价你的?从哪些事情上边可以体现出来?能举个例子么?


7、家是哪里的?有什么兴趣爱好?


8、有赞是你的第几志愿?为什么不选杭州的其他公司?


9、说一个最近做的项目?以后的职业规划是什么?


10、期望薪资是多少?现在手上有offer么?


11、有什么想问我的么?问了一下面试官对我的评价。


---end---



●编号263,输入编号直达本文

●输入m获取到文章目录


推荐↓↓↓

程序员求职面试