从外卖员到程序员,自学 3 年终于转行成功,三面
=====================================================================
先来自我介绍:
老家农村,家里好不容易把我送到大城市读书,大学非 985,211,但在我们老家,能出一个本科大学生也是非常不容易的。因为农村信息的相对闭塞,我对大学专业一无所知,加上分数并非前茅,最后被调剂一个我并不喜欢的专业,这里就不透露自己是什么学校了,只能说毕业之后为了能多赚点,选择了送外卖,这一送就送了将近 3 年的时间。
为什么学编程?
接触到编程是一次很偶然的机会,有一次送外卖,对方是自己的学长,他是计算机专业的,毕业后就进了一线互联网公司,那之后就偶尔有跟他聊人生聊未来,一次契机,他劝我何不自学编程,来做程序员?后来考虑了很久,自己也综合对比了各行各业的发展,最后决定学习编程,选择了 Java 方向。
下文,我会对我的自学方法、自学资料以及我的面试经历进行一个分享,若有需要自学资料的朋友,可以戳这里,暗号:CSDN获取免费资料包进行下载。
========================================================================================
拼多多一面(大约 1h 左右):
讲一讲 final / finally 的区别
try-catch-finally 在不同情况下的执行顺序?
finally 里 return 和外部的 return 谁覆盖谁?
wait / notify / notifyAll 说一说?
notify 唤醒线程之后可以立刻执行吗?
sleep / wait 的区别?
Java 的线程有哪些状态?
Java 堆的分布?
为什么要分出两块 survivor?
Mark-Copy 的流程?
什么情况下会触发 Full GC?
Full GC 和 Minor GC 的耗时比例?
老年代和新生代的空间大小比例?
HTTP 状态码列举一些?
connect 失败会报什么异常?
IO 分类?NIO 是阻塞的还是非阻塞的?
聚集索引、联合索引、覆盖索引解释一下?
口头设计一个表和索引,然后说一说哪种查询会走联合索引,哪种会走覆盖索引?
聊项目,以及项目的困难点?
手撕算法环节:有序数组 / 链表转平衡二叉树
拼多多二面(大约 50 分钟左右):
自我介绍
聊聊项目
TCP 的流量控制和拥塞控制说一说 查问:接收窗口的空间是怎么分配的?是不是多个 TCP 连接共用一块内存还是各自有独立的?
TCP 和 UDP 的区别
网络的五层模型,每一层有什么协议?
PING 命令用的是什么协议(是 ICMP,我没答上来)
OS 的内存管理、进程管理说一说
物理内存空间、虚拟内存空间?
虚拟内存的作用?
内存的连续空间不够分配的时候怎么处理?全局内存的空闲空间不够分配的时候怎么办?
快排和归并的复杂度,快排的退化
平衡二叉树各种操作的时间复杂度
AVL 树和红黑树的区别?
红黑树的应用?JavaTreeMapAPI 为什么不用 AVL 树?
B 树和 B+ 树的应用?有什么区别?为什么 MySQL 用 B+树?
Redis 和 memcache 的区别?Redis 何以高性能?(这里我暴露了自己的菜鸡水准,面试官耐心地指正了我对于他俩的错误认知)
异步非阻塞 IO 了解吗?(扯了点事件分发器的 Proactor 模型,面试官认可了)
手撕算法:二分查找变形题,浮点数的等差数列,一开始公差是 1.0,在某一个位置公差变为 0.1,找到该位置
看你写的之前送外卖?为什么毕业之后没有从事自己本专业内的工作?(我回答的想多赚钱)
你的 Java 是自学的?怎么坚持下来的?期间遇到什么困难吗?
手头上有哪些 offer ?
拼多多三面(HR 面大约 30 分钟):
对拼多多有什么了解?给拼多多做一个画像?
家是哪儿人?对于未来的就业城市有什么想法?
有女朋友吗?
目前面了哪些公司?对于目前投的公司有什么偏好吗?
有想象过在拼多多工作的一天吗?对薪资有什么要求?
从哪些渠道了解互联网相关的讯息?
如果拼多多把你挂了,你觉得会是什么原因?我和你聊了二十分钟,你觉得你的哪些非技术性的综合素质可能不如其他候选者?
薪资
你有什么想问的吗?
评论