TP-Link 23届提前批 一二三面
TP办事效率太高了,一面二面之间隔了三天,二面三面之间就只隔了一天
一面(25min)
面试内容
- 讲项目
找了简历中的一个项目,问得比较详细,讲了将近20min- 项目架构
- 总体具体实现
- 某个模块的实现,该实现和另一种实现的比较
- 八股
就问了一个问题,大概5分钟- IOC控制反转的概念和好处
总结
- 侧重项目,考察对项目细节的理解程度
- 我在回答IOC问题的时候只回答了对象容器化(基础不牢,把控制反转和依赖注入给忘了),面试官后来确认了一遍我的回答,确认完之后就直接结束面试了。
二面(40min)
面试内容
讲项目
简单问了一下,讲了整体架构和功能算法题
题目1(口述)
数字0~n,中间缺了一个数,乱序放到数组中,如何快速找到缺失的那个数(XOR)。我刚开始以为是有序的,结果回答了一个二分方法(尴尬),结果面试官说是无序的,后来他就直接把答案讲给我听了。
题目2(口述)
两个字符串,判断是否可以只交换两个字符的位置就可以让它们相同。直接比对,注意判断长度,注意字符串相同的情况。
题目3(口述+编程)
一个int数组,找到一个位置,使该位置左边之和等于右边之和,找不到就返回-1。
先口述思路,再在本地IDE上编程。想复杂了,o(n)的方法就行
总结
- 主要考察算法,面试官手里可以拿到上次面试的记录,所以项目方面没有深问。
- 算法题都不难,但是面试的时候太紧张了,总是把简单的问题往复杂里想,所以几个问题我都回答地不完美,最后都要面试官指点。
- 面试官人很不错,题目回答的有问题,会主动引导思路。
- 三个问题全部回答完后,面试官告诉我三面的大概时间,就结束面试了。
三面(50min)
面试内容
- 本科成绩怎么样
- 介绍研究生的方向,介绍研究内容,细节问题(主要考察熟悉程度)
- 研究生有什么成果(论文发表情况)
- 为什么选择软件开发
- 软件开发学习的过程和时间线
- 项目都是怎么做的,来源是什么(课程、文档、博客)
- 某个项目里面采用微服务架构的好处
- 常用框架的源码看过吗
- 有没有了解过容器化、自动化部署方面的知识
- 现在拿到几个offer了(提前批还没开始几家,当然一个offer都没...)
- 个人日常爱好
总结
- 这一面没有深入考察技术,和技术有关的几个问题都是点到即止
- 对个人经历考察得比较多,在个人科研项目方面问了挺久
- 面试官比较严肃,年龄比之前的面试官都要大一点,猜测可能是主管
- 这一次面试还是没有反问环节,准备的好几个问题都没机会问,难道还有下一次面试?
- 一面6.22 | 二面6.26 | 三面6.28,一周时间不到,TP安排了三次面试,堪称效率之王