拼多多春招一二面面经(服务端开发实习生)
拼多多春招面经(服务端开发实习生)
4.10(周五)参加的pdd笔试,4个题目,100+70+90+70
听说pdd笔试会出往年的原题(我都不知道还有往年原题这种东西),所以建议考前可以理一理思路,万一呢是不是
大概16号(周四)的时候发了面试通知的邮件,HR应该是成批统一处理的
18(周六上午)一面
一面面试官上来就让做题,题目到不是很难(听说算法岗那边要难一点),一个字符串拆分,要求相当于是手写代码,写完了给面试官去解释就行,但是最好核心步骤写的严谨一点
代码之后是自我介绍,梳理项目等等
面试官对kafka提了一些问题,大概有你是如何使用的,kafka怎么做的负载均衡等等
数据库索引了解过么,简单介绍一下
给一个场景题,长的一串url,怎么变成一个只有六个或者八个字符的短url
一些密码学的简单内容,对称加密非对称加密,什么场景去应用什么
大概就是这些,连上代码时间总计四十多分钟,我还在那纳闷怎么Java相关的一点没问,结果后面报应就来了……
中午大概十二点三十多hr打电话,约了一点钟的面试(没错就是二十分钟以后)
18(周六下午)二面
二面没有代码题,但是整体考察的角度和一面很不一样,面了几家之后感觉,背书只能让你走过一面,真正到了二面及以后,会对你综合理解和应用的能力,看问题的角度,对问题理解的深度进行考察,不仅仅是复述知识点
还是先自我介绍,对项目进行了展开
这边对kafka问了一些更具体的问题,比如为什么选择kafka作为消息队列,对比其他消息队列的优点;为什么kafka的吞吐量可以很大;如果你想进一步扩展系统的吞吐量,你会去怎么设计(我这边说了一些简化数据结构,降低磁盘io,顺序读写,零拷贝之类的);你有自己实现过零拷贝吗(没有)
你这边提到了redis,redis为啥吞吐量也很大(单线程,多路复用,数据结构简单等等);为啥redis要用单线程;如果只考虑键值对的数据结构,我用一个hashmap来承担这样的功能为什么不可以呢(说了过期策略问题,线程安全问题,持久化相关的一些)
数据库,查看执行方案,如果我要对id大于3的行进行修改,同时我还要插入一行id大于3的新数据,会不会冲突?
场景题,假设多个线程共同要去修改一个值,这个值保存多个线程中值最大的那个,怎么在不加锁的情况下实现?
Java字节码了解过吗?ALOAD 0(是叫这个吗)是坐什么的(不会,完全的知识盲区)
自己用Java实现过内存的一些操作吗?(没有)
平时是怎么学习的?课外自己会学什么看什么?
反问环节:我问了有啥对实习生的期待和要求,面试官说主要考虑一个你对技术的热情,爱不爱学习,有没有钻研精神;第二个看你有没有准确定位和分析问题的能力,能不能很快get到点
我还问了一个一共几轮技术面,面试官说他也不是很确定,让我回去问问hr求证一下
#拼多多暑期实习##拼多多##实习##Java工程师##面经#
4.10(周五)参加的pdd笔试,4个题目,100+70+90+70
听说pdd笔试会出往年的原题(我都不知道还有往年原题这种东西),所以建议考前可以理一理思路,万一呢是不是
大概16号(周四)的时候发了面试通知的邮件,HR应该是成批统一处理的
18(周六上午)一面
一面面试官上来就让做题,题目到不是很难(听说算法岗那边要难一点),一个字符串拆分,要求相当于是手写代码,写完了给面试官去解释就行,但是最好核心步骤写的严谨一点
代码之后是自我介绍,梳理项目等等
面试官对kafka提了一些问题,大概有你是如何使用的,kafka怎么做的负载均衡等等
数据库索引了解过么,简单介绍一下
给一个场景题,长的一串url,怎么变成一个只有六个或者八个字符的短url
一些密码学的简单内容,对称加密非对称加密,什么场景去应用什么
大概就是这些,连上代码时间总计四十多分钟,我还在那纳闷怎么Java相关的一点没问,结果后面报应就来了……
中午大概十二点三十多hr打电话,约了一点钟的面试(没错就是二十分钟以后)
18(周六下午)二面
二面没有代码题,但是整体考察的角度和一面很不一样,面了几家之后感觉,背书只能让你走过一面,真正到了二面及以后,会对你综合理解和应用的能力,看问题的角度,对问题理解的深度进行考察,不仅仅是复述知识点
还是先自我介绍,对项目进行了展开
这边对kafka问了一些更具体的问题,比如为什么选择kafka作为消息队列,对比其他消息队列的优点;为什么kafka的吞吐量可以很大;如果你想进一步扩展系统的吞吐量,你会去怎么设计(我这边说了一些简化数据结构,降低磁盘io,顺序读写,零拷贝之类的);你有自己实现过零拷贝吗(没有)
你这边提到了redis,redis为啥吞吐量也很大(单线程,多路复用,数据结构简单等等);为啥redis要用单线程;如果只考虑键值对的数据结构,我用一个hashmap来承担这样的功能为什么不可以呢(说了过期策略问题,线程安全问题,持久化相关的一些)
数据库,查看执行方案,如果我要对id大于3的行进行修改,同时我还要插入一行id大于3的新数据,会不会冲突?
场景题,假设多个线程共同要去修改一个值,这个值保存多个线程中值最大的那个,怎么在不加锁的情况下实现?
Java字节码了解过吗?ALOAD 0(是叫这个吗)是坐什么的(不会,完全的知识盲区)
自己用Java实现过内存的一些操作吗?(没有)
平时是怎么学习的?课外自己会学什么看什么?
反问环节:我问了有啥对实习生的期待和要求,面试官说主要考虑一个你对技术的热情,爱不爱学习,有没有钻研精神;第二个看你有没有准确定位和分析问题的能力,能不能很快get到点
我还问了一个一共几轮技术面,面试官说他也不是很确定,让我回去问问hr求证一下