唉,真是男默女泪的跪经。。
自己是理科专业,技能培养靠刷题,机器学习靠自学,计算机知识靠面试前突击。一开始提前批投的是算法岗,但是那时候真的是啥都不懂(没开玩笑,我还以为算法是leetcode算法。。。面试官都懵了),又是第一次面试,啥都没准备,面试官一问三不知,一个小时的面试,最后就差求着问我,你到底会啥。秒拒后问我,要不要转到开发岗,好的,有总比没有强。那时候连前端后端架构什么的不知道是什么,全靠突击了三天。
一周前一面,面试官问了下背景,然后就是查户口的问我知道啥,你知道啥说啥吧。
1. 域名的搜索过程,DNS如何工作的
2. 三次握手、四次挥手讲一下,为什么挥手要多一次
3. 数据库了解多少,隔离级别,B树B+树
4. 问了一个醉汉坐飞机的问题,就是那个100个位置,第一个是醉汉随机坐,然后以此类推,问第100个人坐到自己位置的概率。
5. 两道算法题
- meeting rooms经典题,问最大重叠人数和对应的时间长度和。follow up: 如果区间特别特别多,如何改进。这个follow up是真好
- 生成顺时针1-n^2的旋转矩阵
其实题目都特别基础,面试官考虑到我专业背景薄弱,最忧伤的我答的最差的居然是第4题,不知道如何解释了,唉,这可是我的本行啊。。。真-换家-了。。
不过coding题做的还不错,拿到二面
二面不知道咋准备了,能突击的都突击了,接下来不会的也理解不了。面试官也确实不太希望专业背景薄弱的人吧。
1. 首先是做了一道算法题:经典的课程顺序的拓扑排序题,没有跑,事后自己跑了一下,差了一个if,算是一个小bug吧
然后面试官就不知道怎么办了,随便问了几个问题
1. 进程和线程的区别,我只知道一个进程有一个或者多个线程,进程独立,线程共享内存,其他的都不知道了。
2. 线程之间哪些是共享的,哪些是独有的,不知道。。操作系统根本没法突击
3. TCP为啥是三次握手,如果两次握手会怎样
4. 数据库索引为什么用B+树,而不是二叉树。我回答的是因为深度原因,但是面试官说不都是logn么,我迷糊了一会,说有常数项的区别,面试官没同意也没否认
然后问了一个题外话,问机器学习了解哪些算法吧。本来还想跟他说,你再多问问吧,我好歹花了一周充电呢,面试官估计一眼就看出来我这个冒牌货,坚决不愿意多花时间了。
35分钟就结束了。。。面试官其实已经明说了专业背景薄弱,不太好问问题,其实当时也已经意识到被拒了,不过其实没有多难过,内心很快就坦然了,然后和面试官谈了几分钟心,问是不是有很多不是计算机专业的人来面试开发岗,面试官估计理解错了,直说我们面试只问觉得你应该会的,你要是不会的问题,我们面试的时候就不问。。面试官人也特别好,大概说了一下一般面试者的情况,来自各个专业什么的,然后说你来做开发的话,很多专业知识都用不上,其实有点可惜之类的。
唉,这语气,怎么和我当年表白被发好人卡的语气一模一样呢。。我都要毕业就失业了,是萝卜还是枣,填肚子才是最重要的啊。。开发岗这么不适合转专业的人啊。。
拜拜了字节,算上算法面试了4次,不得不说,字节的面试官确实专业素质高,人都特别友善,也很能引导人,笔试题也都是质量高的题目。用来作为提升面试能力真的特别有帮助,就这一点,我还是很感激的。唉,但是啊,哪有把待遇最好的公司拿来练手的呢。
全部评论
(4) 回帖