TP-LINK 杭州C++ 23届提前批面经
23-05-23,看到有人收藏了该贴,就来更新一下后续: 秋招最后是签了tp,但后续又解约去了其他家公司。 还是感谢tp给了offer,在去年的就业环境中给了我一些自信和底气。
后面七月中拿了意向,已经签了两方,也是目前唯一一个offer,今年这个形势可能最后就是去TP了。 另外想了解公司薪资、福利的也可以私聊我。 面试内容的话这个帖子已经写得比较全了,其他的也想不起来了。
时间线
- 06-17截止日期当天投递
- 06-20 通知进行在线测评
- 06-29 测评通过,通知面试
- 06-30 一面
- 07-05 通知一面通过,约二面
- 07-06 二面
- 07-11 约三面
- 07-12 三面
在线测评
内容挺多的,分模块计时。太久远了,具体的内容记不得了。
- 基础知识,计网、操作系统、linux都涉及到了。题型有选择、填空、简答
- 两道编程题,题目不难,但是做题体验比较差,没有说怎么输入输出,也不让调试运行。就和期末考试在纸上写代码体验差不多。
- 类似行测的题目。数量关系、逻辑推理还有图形推理,时间比较紧张,图形推理基本上都是蒙的
一面
一面就一个面试官,问的问题比较常规,根据简历和项目问的八股。总共面了20分钟。
- 自我介绍,然后问了一下本科的奖学金的级别,问了一下本科的论文的级别,是老师带的还是自己做的。
- 自己挑一个项目介绍一下
- session存到redis里,是存的什么数据结构
- 引申: redis的基本数据结构
- 为什么存session?谁来使用存的session?
- 密码存到redis里是怎么存的? 我们的项目没考虑安全,直接存的明文,实际场景可以存md5...
- 进程间通信的方式
- 共享内存提到需要上锁,介绍一下常见的锁
- 死锁的条件? 如何避免死锁?
- C++的多态有哪些?
- TCP如何实现可靠传输
还有一些问题忘记了。然后就是反问,主要问了杭州和南京两个base的基本情况,南京刚成立,人不是很多。
自我评价:算是人生中的第一次求职面试,准备的不充分,尤其是面试前还在忙实验室的事情, 很多基本的问题都没答上来。 以为凉了。
二面
一个面试官,上来就说,这次面试主要是做题。然后问了三道智力题,做了一道编程题。 总共30分钟
- 智力题,100盏灯,最开始都是关的,第i个人会将第i、2i、3i...的灯开关按一次,问最后多少盏灯亮着。 题目不难,但是我一上来先是看错了题,闹了个笑话。。。
- 智力题,鸡蛋掉落,两枚鸡蛋,100层楼,最坏情况下的最少尝试次数。友站上有对应的算法题,没答上来。
- 算法题,简化版的424. 替换后的最长重复字符, 简化成只有0、1的数组。面试前看其他人的面经看到了这个题,所以提前准备了一下。 说一下思路,然后共享屏幕在本地的ide或者编辑器里写,也不用运行。 但是还是写了一堆bug,写错条件、语句写错位置之类的。。。
- 可能是算法题做太快,又来了一道智力题: 用rand5()实现rand7()。 看面经也看到了,我上来就是一个
5*(rand5()-1)+rand5()
, <21的取余+1。 面试官说,这个方法,运气最坏的情况下可能一直>21, 让再想想,然后没想出来,到时间就结束了
感想:的确需要多看面经。另外面试的时候心态不太好,总是看错题、出现低级错误。
三面
大概二十分钟,没怎么问技术,感觉是把简历又过了一遍。下面是目前回忆起来的问题。
- 自我介绍
- 本科时候的成绩,本科成绩也还行,也参与科研了,为什么跨考?
- 研究生阶段的科研方向、内容
- 考研的专业课?
- 为什么选择开发? 什么时候决定的? 怎么学习的?
- 又问了一下简历上面写的项目,字节校园的那个项目的情况, 为什么做web服务器(意思是已经烂大街了)
- 目前offer情况
- 后面准备怎么提升自己?
反问
- 这个是最后一面吗?什么时候有结果? 是的,今年基本上都是三面。 3-5个工作日有结果
- 进去之后的部门是怎么定的? 根据简历、面试,分配合适的部门
- 现在的项目太简单了,有什么建议?要不要重新做一个? 对网络感兴趣的话,这个web服务器可以继续深入去优化,做一个类似陈硕的mudoo库的框架之类的。