Tiktok基础架构新加坡面经

背景

楼主21届本科毕业,目前在新加坡Shopee Infra团队从事数据库中间件开发,最近面了新加坡Tiktok的基础架构(分布式KV),目前3轮技术面结束,正在等待HR面,每一轮面试都有反问环节,反问环节也没问什么有意义的内容,所以下面忽略

一面

一面整体上非常单调,大概50分钟,主要两部分:项目和算法题,项目介绍了30分钟,然后面试官围绕项目问了几个问题,最后刷了一道算法题三数之和

二面

二面没有问太多我现在做的中间件项目,整体上50多分钟,猜测可能是一面已经问完了,问了一些我字节实习期间做的项目,主要是问问工作量,比如多长时间、代码量、设计文档多少页这种。
然后问了简历上性能调优的工作,主要是对组内的中间件进行性能测试,然后想办法提升网络吞吐量。
:通过批量网络IO减少系统调用次数,改同步为异步并发,删除一些go-mysql的重复操作
面试官:听你说了减少系统调用次数来提升性能,read网络系统调用哪里最耗时呢?
:系统调用涉及到用户态到内核态的切换,用户栈内容需要拷贝到内核栈中,这是一次耗时,最耗时的地方是数据从网卡到内核,从内核到用户的两次拷贝,另外如果发生了进程切换,那么现有进程的TLB将会发生失效,TLB失效也会造成一定的影响,但是这个影响不是那么直观。虽然x86支持PCID技术,能够避免进程切换时TLB失效,但是这种做法在多处理器下会导致进程的TLB项遍布在多个处理器的TLB中,如果想要使该进程的TLB失效,就可能需要处理器间中断操作
面试官:对TiKV了解吗
:当时计划做binlog server的时候,研究过TiKV的协议部分,因为binlog server很重要的一点是需要实现mysql master的部分功能
面试官:TiKV是如何实现多行语句事务呢?这部分代码有看过吗?
: 没有
面试官:一些概念性的问题:什么是事务,MySQL事务隔离级别,什么事事务的一致性,什么是强一致性,弱一致性,最终一致性。了解CAP理论吗?
:CAP理论内容忘了,其他的都还行。
还有一些问题忘了
最后是一个算法题:二分相关的,mid中的easy

三面

上来问了Shopee Infra的一些事情,问我leader是谁,他说了好几个我们database组的人,看来对我们组有了解。

  1. 你自我介绍说了网络,操作系统,你对网络和操作系统很了解吗?
  2. 操作系统你看过哪些模块的源码,是怎么看的
  3. 操作系统中文件系统的一些命令,比如iostat这种,内核是怎么实现的
  4. 又问了下字节实习的项目,工作量以及哪些是我干的
  5. 问我热爱技术为什么要去新加坡,毕竟...懂得
  6. 问我平时都干嘛
  7. 问我聊不了解CRDT
  8. 问我组中间件的整体架构,然后部署方式,了解到是单进程方式后,让我设计一个分布式的系统统一管理云云,算是一个系统设计题
  9. 问我聊不了解TiDB,我说我看过一些代码,debug过
  10. 紧接着问我知不知道Linux是如何实现debug的
  11. 还有一些其他问题忘了,没有算法题

状态

HR面约了时间,等待HR面

#社招面经##字节跳动##后端开发##基础架构工程师#
全部评论
看到楼主好像通过了,恭喜!顺便问一下,国内应届去新加坡虾皮或者字节工作要怎么样的学历啊,本硕211软工够不够得到门槛呀?真心求问。
1 回复 分享
发布于 2022-07-27 15:42
🐮哇
点赞 回复 分享
发布于 2023-01-05 23:33 陕西
请问大佬shopee新加坡应届推荐去吗?
点赞 回复 分享
发布于 2022-07-04 13:21
牛的牛的
点赞 回复 分享
发布于 2022-06-18 19:16
顶一顶
点赞 回复 分享
发布于 2022-06-09 15:39

相关推荐

03-24 12:36
门头沟学院 Java
秋招跑了大半年,前前后后做了几十家公司的笔试,从互联网大厂到量化私募,从国企总行到游戏公司,真的见识了什么叫 “没有最难,只有更难”。1. 头部量化私募(九坤、幻方、灵均、宽德)难度天花板,没有之一,能完整做完的都是真大神。难在哪里:题型极其硬核,完全不是互联网笔试的量级。除了超难的算法题(普遍是 LeetCode Hard + 难度,还会涉及竞赛题),还有大量的概率论、线性代数、随机过程、高数证明题,甚至还有 C++ 底层原理、Linux 内核相关的硬核选择题,对数学和编程功底的要求拉到极致。真实体感:我做九坤的笔试,120 分钟,10 道选择 + 3 道编程 + 2 道证明题,选择题一半靠蒙,编程题一道没完整 AC,证明题直接空着,考完直接怀疑人生,非科班 + 数学功底弱的,直接会被劝退。2. 华为「天才少年计划」/ 高端岗位笔试普通 OD 岗的笔试难度就不低,天才少年 / 高端研发岗的笔试,更是地狱级。难在哪里:题量超大,难度拉满,对代码的时间、空间复杂度要求极其严格。通常是 5 道算法题,150 分钟,几乎全是 Hard 难度,涉及动态规划、图论、复杂模拟、数据结构设计,很多题都有隐藏坑,暴力解法直接超时,必须想到最优解才能 AC。真实体感:身边的 985 硕学长,刷了 600 多道 LeetCode,做华为高端岗的笔试,也只 AC 了 2 道半,对边界情况的处理、代码优化能力的要求,远比普通大厂高得多。3. 腾讯游戏 / 米哈游 游戏客户端 / 引擎开发岗笔试游戏圈的笔试,是出了名的难,完全是另一个维度的考核。难在哪里:不只是考算法,更是考游戏开发的硬核功底。题型覆盖 C++ 底层原理、计算机图形学、OpenGL/DirectX、物理引擎、数据结构、操作系统,还有超难的算法编程题,很多题都是针对游戏开发场景设计的,没接触过的话,连题干都读不懂。真实体感:做米哈游的客户端开发笔试,选择题一半都是图形学和 C++ 内存管理的硬核题,编程题考了游戏里的碰撞检测算法,完全没接触过的话,根本无从下手,非游戏开发方向的,大概率会直接交白卷。4. 字节跳动 算法岗 / 后端开发岗笔试互联网大厂里,字节的笔试难度是公认的第一梯队,虐哭了无数校招生。难在哪里:题量超大,时间极紧,难度梯度离谱。通常是 40 道行测 + 4 道算法题,120 分钟完成。行测题烧脑耗时间,算法题 2 道中等 + 2 道 Hard,几乎没有送分题,对做题速度和心态都是极致的考验,很多人行测就耗掉了一大半时间,算法题根本没时间写。真实体感:秋招做字节的后端笔试,行测就做了 50 分钟,剩下的时间 4 道算法题,只 AC 了 1 道半,身边很多同学都是全程被按在地上摩擦,能 AC3 道以上的,都能被称为大神。5. 六大行总行 / 政策性银行 科技岗笔试非技术岗里的地狱难度,难在离谱的题量和无所不包的考点。难在哪里:和互联网公司完全不同,不只是考编程,考点覆盖行测、英语、计算机专业知识(计算机网络、操作系统、数据库、组成原理、C++/Java)、金融知识、时政、常识,甚至还有性格测试,题量能到 200 多道,考试时间 3 个小时,全程手不停,做到最后眼睛都花了。真实体感:做某国有大行总行的科技岗笔试,3 个小时,200 多道题,英语还有 10 道完形填空 + 5 篇阅读理解,计算机专业知识考得又偏又细,做到最后手都酸了,连蒙带猜才勉强做完,考完直接脑子一片空白。最后想跟牛友们说,笔试只是秋招的一关,哪怕考崩了也不用自我否定,很多笔试的通过率本来就极低,不是你不够优秀。
你做过最难的笔试是哪家公...
点赞 评论 收藏
分享
评论
10
37
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务