顺丰科技-面经-Java 后端
一面
自我介绍
java 中有哪些集合?
讲讲 map 的扩容?
为啥扩容是 2 倍?
讲讲 set 的原理?
set 是怎么判断元素是否重复的
讲讲 mysql 索引失效的情况
说一下如何防止 sql 注入
mybatis 中 # 和 $ 有什么区别? # 防注入的原理是什么
讲讲平时学习新技术的方法和心得
讲讲平时如何解决开发中遇到的问题
你现在关于 web 的项目有哪些呢
http 和 https 有什么区别?
https 原理是什么?
先使用非对称加密在使用对称加密的是出于什么原因的呢?
微信抢红包是怎么实现的呢?
反问
二面
30 秒自我介绍
无领导小组面试,3分钟自我发言,20分钟讨论:得出一个结论并选出一个领导者汇报
题目
假如你是某门店的店员,中午顾客李小姐到店取昨天电话预定的一瓶高端红酒,用于今天的商务宴请。你查了订货系统和交班日志,里面没有任何提交预定需求的记录。看来,应该是昨天负责的同事忘记了顾客李小姐的电话预定。就在你跟顾客李小姐沟通时,你们店的VIP顾客王先生来电说:一个小时后来取提前一周预定的同款红酒,用于自己的订婚典礼。现在店里只剩下一瓶高端红酒,顾客李小姐得知此事,情绪有点激动。而到最近的仓库调货至少需要2个小时。此时,你无法联系到昨天负责的同事,店长也刚好不在店里。 作为当班店员,你将如何处理本事件?并请说明原因。
发言
先明确前提:两个顾客分别需要两瓶酒,一个顾客是 vip ,1小时候后提前来取,另一个顾客是李小姐,普通用户,情绪很激动
-
先安抚李女士的情绪,并跟李女士说,我们这边先电话咨询一下这位 vip 客户,看看这位 vip 客户能否延后一小时,然后去仓库调货,如果可以,就先把酒先给李女士,然后并给她一些补偿;如果不能,就按照这个订单顺序派发,但是跟她强调 2 小时就能送到,另外语气一定要客气,表示抱歉并强调会有补偿。
-
事情解决后,若果 vip 客户同意推迟,那么皆大欢喜,则私下跟同事说这个事情,让他以后注意;如果 vip 客户不同意,导致李女士大发雷霆,并等待了3个小时才拿到酒,那么就要跟店长反应。
-
无论结果如何,都需要向店长建议对订酒进行规范化,作为一位 java 开发工程师,这个其实可以从软件层面解决,开发一个订单管理的 app ,以及监听电话预定的类型和人物(去调用这个电话的 api ,看一下是属于什么类型的电话,如果是预订电话,在订单系统就去生成一个任务)
一些细节:
-
安抚李女士情绪的时候,可以询问她是否愿意换另一种类型的红酒
-
致电 vip 客户时,告诉他有补偿
-
咨询仓库时要问清楚是否有库存,来回需要多久
三面
自我介绍
平时怎么系统学习 java 基础知识的?
介绍一下实习
项目用到的都有哪些技术栈呢
了解过哪些设计模式
代理模式有哪些
aop 有哪些实现方式
aop 有哪些切面模式
有这么一个场景
mybatis 怎么传值的
# 和 $ 有什么区别
# 防注入的原理
mysql 索引的数据结构
B 树 和 B+ 树的区别
现在给你一条 sql 语句,你怎么优化它
问 everything 原理
反问