文章来源于:https://wwww.iamshuaidi.com,一个专注于校招,面试,面经的编程网站
稀里糊涂没有对面试难度做了解就投了微信支付
流程还是很快的,总体而言虎头蛇尾,给大家分享一下。
一面:初试
未笔试的情况下来的初试 ,开局给了三道题 一小时内写完
1、爬楼梯,斐波拉契数列
2、中等难度的常规回溯
3、LRU缓存类实现
之后一小时面试:
1、自我介绍+科研项目介绍
记录下还有印象的问题如下:
2、full gc怎么触发
3、了解哪些设计模式,问的比较细,面试官形容一个场景,你讲这是啥模式
比如更新迭代的系统用什么模式 好像是适配器模式吧
然后讲一些你自己用过的或者了解的模式
……问了蛮多,比较考察基础,大部分是常规八股,所以印象不深……
二面:复试一面
面试官加了我微信,这个面试官对我比较满意
自我介绍+科研项目介绍 ×2
然后知道我没有开发经历和实习经历就开始了速问速答,就是一个半小时有那种口干舌燥的感觉了
问答:
1、纯函数是什么东西
2、Java集合部分
3、 比如Map和hashMap的区别 hashmap和table的区别 还有实现线程安全的方式和区别
操作系统
1、线程进程的区别
2、进程间通信
3、协程和进程
数据库
1、索引的原理、实现结构 为什么用B+树
2、展开后问的害蛮难答的,如何创建索引,每一列都设置为索引为什么不行,从哪几个方面考虑
jvm
讲一讲java内存模型
计网
1、http和https区别、3开头状态码
2、三次握手四次挥手
3、https的ssl连接如何建立,加密如何实现,公钥密钥有几对,怎么混合加密(由以前老的网页的非法弹窗为什么会出现引出的问题)
4、MD5算法是否可反编译
linux
1、查看系统日志文件
2、你用过的命令列举
算法:
问一个问题你得马上给出思路,面试官觉得ok直接过下一个
1、返回链表倒数第k个节点 (我说快慢指针,四个字说完刚要解释,他就说ok,那我们下一题)
2、排序算法常用哪些,各自的适用场景,然后他给出一个场景描述问你选用啥算法,为什么?
手撕代码:
啊 我好像有个大病 愣是想不出来 ……好像不太难
三面:复试二轮
面试官的开场白是说我的一二面面评比较好,基础和代码考查表现得还好,他没必要继续考察,就聊
下我的项目
我讲了我的科研之后
面试官:……
追问我有没有开发经验和实习,为什么不去实习,在没项目没实习的情况下怎么加强自己的竞争力……
稍微聊了一会后
“那今天先就这样吧,我这边也没什么可以问的了” 光速挂
后续问了二面面试官,帮我去看了面评,主要原因就是缺乏项目经验orz
微信支付竞争激烈,很看重上手就能实操吧,投的朋友们可以考虑清楚,因为这个技术面不算初试,复试技术面就3-4轮了,加起来面试次数还是很多的。
另外,建议大家在面之前可以先多看看这些公司的面经,例如腾讯还是挺喜欢问网络相关的,腾讯的面经这里我也特地去整理了一些
2、腾讯前端开发面经
大家面试加油!