BIGO 面试经历

  6月6日(2019年) 下午把简历发给了一个猎头介绍的 BIGO 内部员工,然后他把简历推过去了,不过不知道推的是哪个部门。

  6月12日晚上8点50分的时候,BIGO HR 打电话过来,简单问了一下情况,比如为什么投 BIGO,我说因为 BIGO 技术不错,氛围好,几个产品用户量大,而且自己想去广州生活啪啦啪啦之类的。然后约面试时间,我问是现场面试还是视频面试,她说可以协调,我说白天可以请假,因为从深圳到广州需要一个上午的时间,于是约周五(6月14日)的下午,然后说晚上给我发面试邮件。

  等到第二天--6月13日下午的时候依然没收到面试邮件,问内推我的那个哥们,他也不清楚,于是我只好直接打电话去问,第二通电话联系上 HR 了,问她具体的地址,她和我说了一下,然后短信给我发了地址和时间,晚上11点时收到了面试邮件。

  6月14日早上9点,坐上了前一天预定的大巴前往广州,前一天在地图上搜了一下,BIGO 公司位于番禺广场附近,地铁3号线的终点站,离市区挺远的,不管哪种出行方式耗时都差不多,所以选择大巴,不用坐高铁跑来跑去那么折腾了。11点多时到达天河华师地铁站,在这里下车休息了一下,顺便看看面试题。13点多坐上3号线地铁前往番禺广场终点站,14点到站,然后步行到基盛万科里,发现这里是个商业区,找了一会才找到 BIGO 公司,它竟然躲在一个角落里,然后到一楼前台报到,前台登记好后给了我一个临时出入卡,大概几分钟后 HR 下来把我接上去,HR 看起来没什么精神,不知道是上班太累还是生病了。

  HR 把我领到19楼(好像是19楼) 的一个会议室里,给我端来了一杯凉开水,让我在这里等候。会议室看起来像是还没有装修好,还没能投入使用,天花板的各种管道都是裸露出来的,而且我闻到一阵淡淡的异味,不清楚是装修的气味还是什么。

  等了一会儿,一个看起来比我大几岁的小伙子空着手快步走进来,坐到我面前,直接从我手中拿过简历,我以为他要让我自我介绍,没想到他看了一下简历后,直接开始问问题。首先是从项目问起,秒杀系统相关,我给他介绍了一下这个系统的设计细节,然后他给出一个类似的场景,问我怎么处理,接着继续看简历提问,问了很多很多,问得很细,很广也挺深的,有些问题记不清了,回想一下大概有:

1. tcp 序号回绕问题 -- 即当序号超过 uint32 的上限又从头开始时怎么识别是上次的超时重传还是新的数据包

2. 排行榜怎么做,当表里的数据过亿时还能简单 order by 吗?

3. 在 10 亿个数中查找一个数

4. 线上 redis key 增长监控 -- 使用 scan 命令(我没有答出来)

5. 单链表反转,非递归,只能使用两个额外变量

  大概面到4点时,他觉得差不多了,让我等一下,他跑出去请二面面试官,等了一会后二面面试官走进来,看起来应该是个资深技术型的,问了很多架构方面的东西:

1. 服务发现、服务治理等 rpc 相关的东西

2. 场景题,编程或写伪代码,统计朋友圈/连通图的个数,其实就是个简单的 dfs,我写了代码出来让他看,他可能不是很理解,便让我进行演示,演示后他以为这是个动态规划,我说这是深搜…深度优先搜索

3. 配置中心,如何尽量实时同步配置到各台机器上面。我说了很多代码层面的手段,比如增量推送配置,好像没有 get 到他提问的点,不是他想要的答案,他给了一点提示,redis,我说难道是 redis 的订阅发布机制吗?他说差不多,然后因为时间原因直接跟我说了答案,就是使用 mysql 主从同步架构、binlog 机制等,我说的代码层面那些手段其实 mysql 或 redis 都已经实现好的了,不需要自己再去实现一遍。

  二面面试官也是让我等一下,走了出去。我等了十多分钟,还没见有人来找我,hr 进来和我说三面面试官可能要 7 点才有空,让我还是先回深圳吧,明天进行远程面试就行。我走出 bigo,在周围溜了一下,便坐地铁到华师站乘坐回深圳的大巴了,刚好在6点58分赶上了7点的那一趟车,但赶不及买面包了,只好在车上饿几个小时。

  6月15日(周六) 上午11点半,面试官打电话过来进行三面。也是不用自我介绍,直接问问题。问了我一个早期的项目,双向视频客服后台,我和他大概说了一下系统的设计,如何使用 redis 的有序集来模拟用户等待队列,问我如何做高可用、健壮性、容灾相关的,我说了一下使用 redis aof 每秒持久化一次的机制,redis 挂了时就通过 aof 文件恢复,一秒内丢失的数据暂时没想到方案处理,丢了就让用户重头来过~这里答得不好,之前确实没考虑过高可用容灾之类的问题。然后还问了为什么要用 zset 来实现队列而不用普通的队列,我说因为要支持随机删除,zset 的复杂度是 O(logn),普通队列是 O(n) 之类的。接着通过下一个项目问了一些基础的问题:mysql 隔离级别、可重复读、幻读等知识点。问得差不多了,就问我有什么想问的,这一点很好,昨天两个面试官可能因为时间问题,没给我提问的机会。于是我就问了一下应聘所在的部门以及负责的业务,面试官说是支付平台、送礼系统等,说是会对接全公司的部门。

  三面结束时是中午12点,大概20分钟后,HR 微信联系我约下午的 HR 面。我等了一下午,面试的那位 HR 一直没来找我,16点40分时说晚点再找我,我等到周一也没见她主动找我,于是周二早上只好主动问一下,她回复后约下午进行 HR 面。

  6月18日(周二) 下午两点半多,hr 打来电话进行面试,问了一些基本情况。感觉应该是个工作多年的比较资深的 hr,和头条的年轻漂亮的 hr 不太一样。

  6月18日晚上10点半,hr 和我微信语音通话沟通 offer,我感觉好有效率啊,原本还以为需要像头条那样 hr 面完后几天才有结果,然后提供银行流水,接着再过几天才给口头 offer,没想到这么快。给的薪资超出了我的预期,好有诱惑力~我和她说能否考虑两天,20号再给她答复。

  6月20日(周四) 晚上和 hr 确认了一下社保和公积金的缴交基数和比例后就接受 offer 了,我到家后立刻把银行流水发给了她。

  6月21日(周五) 下午 hr 帮我联系上未来的 leader,我加了 leader 微信,问了一些基本情况,晚上才发现原来他就是我三面技术面的面试官~

  6月24日(周一) 上午快12点时,hr 微信上要我的身份证和邮箱,她要给我发 offer 了,然后让我确定一个入职时间,我考虑到实际的离职日期以及不想空闲太久,就说了7月22日周一这天,隔了一会,邮箱收到了电子 offer,看了一下,薪资直接写在邮件正文里,和口头沟通的一样,职级是 Senior Engineer,一时间感觉好激动,因为 Senior 翻译过来是高级,好厉害的 title 哈哈,直到之后问了一个猎头才知道原来 bigo 里的 Senior 是中级的意思,1-3年工作经验都是这个 title,噢~

  6月25日(周二) 上午问内推我的哥们是否了解我应聘的部门,他说不是很了解,我说是支付系统相关的,然后他说支付平台一般是相对比较通用的,各个公司一般都有专门做支付平台的。

  下午我问 hr 邮件 offer 是否需要回复确认,她说是,晚上到家后洗完澡出来已是11点半,赶紧回复了确认。

  6月27日(周四) 下午问内推老哥竞业相关的东西,他说普通员工没啥影响,问我什么时候入职,我说还不是很确定要不要去。他问我拿了还哪些 offer,我说还有 shopee 和微信的,他说我好牛逼啊,转岗微信是很难的,我说感觉微信放水了。周五时问他 bigo 和百果园水果店有什么关系,他说没关系,bigo 是企业名称,百果园只是注册公司名称。

 

posted @ 2019-06-22 15:29  Newdawn_ALM  阅读(129)  评论(0编辑  收藏  举报